2016-09-20 104 views
0

我是新来的,在编程方面。我正在制作一个只显示一周的节目。我有几个星期的约会,我的问题是:有没有办法只显示你当前所在星期的“约会”?WPF日历周

+1

请分享你已经尝试过,并在那里你卡住了。 StackOverflow是帮助你,而不是为你做的工作。另外请阅读[问] – uruloke

+0

我已经在谷歌和YouTube上搜索了任何有关于我的问题后可能有任何问题。 –

+1

更像是以编程的方式分享你所做的事情,而不是使用谷歌搜索或观看YouTube视频。 –

回答

0

我已经想通了

 var googleCal = new GoogleClass(); 

     var ugedag = DateTime.Now.DayOfWeek; 

     var getMondays = googleCal.GoogleEvents.Where(e => e.StartDate < DateTime.Now.AddDays(6)); 

     var getTuesdays = googleCal.GoogleEvents.Where(e => e.StartDate < DateTime.Now.AddDays(5)); 

     var getWednesday = googleCal.GoogleEvents.Where(e => e.StartDate < DateTime.Now.AddDays(4)); 

     var getThursday = googleCal.GoogleEvents.Where(e => e.StartDate < DateTime.Now.AddDays(3)); 

     var getFriday = googleCal.GoogleEvents.Where(e => e.StartDate < DateTime.Now.AddDays(2)); 

     var getSaturday = googleCal.GoogleEvents.Where(e => e.StartDate < DateTime.Now.AddDays(1)); 

     var getSunday = googleCal.GoogleEvents.Where(e => e.StartDate < DateTime.Now.AddDays(0)); 



      foreach (var googleCalGoogleEvent in googleCal.GoogleEvents) 
      { 
       listBox.Items.Add(googleCalGoogleEvent.Title); 
      } 

     if (ugedag == DayOfWeek.Monday) 
     { 

      foreach (var events in getMondays) 
      { 
       NewMethod(events); 
      } 
     } 
     if (ugedag == DayOfWeek.Tuesday) 
     { 
      foreach (var events in getTuesdays) 
      { 
       NewMethod(events); 
      } 
     } 
     if (ugedag == DayOfWeek.Wednesday) 
     { 
      foreach (var events in getWednesday) 
      { 
       NewMethod(events); 
      } 
     } 
     if (ugedag == DayOfWeek.Thursday) 
     { 
      foreach (var events in getThursday) 
      { 
       NewMethod(events); 
      } 
     } 
     if (ugedag == DayOfWeek.Friday) 
     { 
      foreach (var events in getFriday) 
      { 
       NewMethod(events); 
      } 
     } 
     if (ugedag == DayOfWeek.Saturday) 
     { 
      foreach (var events in getSaturday) 
      { 
       NewMethod(events); 
      } 
     } 
     if (ugedag == DayOfWeek.Sunday) 
     { 
      foreach (var events in getSunday) 
      { 
       NewMethod(events); 
      } 
     } 

    } 

    private void NewMethod(GoogleEvents events) 
    { 
     if (events.StartDate.Value.DayOfWeek == DayOfWeek.Monday) 
     { 
      Monday.Items.Add($"{events.Title} \n{events.StartDate:dd-MM HH:MM}-{events.EndDate:HH:MM}"); 
     } 

     if (events.StartDate.Value.DayOfWeek == DayOfWeek.Tuesday) 
     { 
      Tuesday.Items.Add($"{events.Title} \n{events.StartDate:dd-MM HH:MM}-{events.EndDate:HH:MM}"); 
     } 

     if (events.StartDate.Value.DayOfWeek == DayOfWeek.Wednesday) 
     { 
      Wednsday.Items.Add($"{events.Title} \n{events.StartDate:dd-MM HH:MM}-{events.EndDate:HH:MM}"); 
     } 

     if (events.StartDate.Value.DayOfWeek == DayOfWeek.Thursday) 
     { 
      Thuesday.Items.Add($"{events.Title} \n{events.StartDate:dd-MM HH:MM}-{events.EndDate:HH:MM}"); 
     } 

     if (events.StartDate.Value.DayOfWeek == DayOfWeek.Friday) 
     { 
      Friday.Items.Add($"{events.Title} \n{events.StartDate:dd-MM HH:MM}-{events.EndDate:HH:MM}"); 
     } 

     if (events.StartDate.Value.DayOfWeek == DayOfWeek.Saturday) 
     { 
      Saturday.Items.Add($"{events.Title} \n{events.StartDate:dd-MM HH:MM}-{events.EndDate:HH:MM}"); 
     } 

     if (events.StartDate.Value.DayOfWeek == DayOfWeek.Sunday) 
     { 
      Sunday.Items.Add($"{events.Title} \n{events.StartDate:dd-MM HH:MM}-{events.EndDate:HH:MM}"); 
     } 
    } 
0

到目前为止,我有这样的:

public partial class MainWindow : Window 
{ 
    public MainWindow() 
    { 
     InitializeComponent(); 
     var googleCal = new GoogleClass(); 

     foreach (var googleEvent in googleCal.GoogleEvents) 
     { 
      if ((googleEvent.StartDate.Value.DayOfWeek - googleEvent.StartDate.Value.DayOfWeek) 
      { 
       listBox.Items.Add(googleEvent.Title + " " + googleEvent.StartDate); 
      } 


     } 
    } 
} 


public class GoogleEvents 
{ 
    public string Title { get; set; } 
    public DateTime? StartDate { get; set; } 
} 

class GoogleClass 
{ 
    public List<GoogleEvents> GoogleEvents = new List<GoogleEvents>(); 

    static string[] Scopes = { CalendarService.Scope.CalendarReadonly }; 
    static string ApplicationName = "Google Calendar API .NET Quickstart"; 



    public GoogleClass() 
    { 
     UserCredential credential; 

     using (var stream = new FileStream("client_secret.json", FileMode.Open, FileAccess.Read)) 
     { 
      string credPath = System.Environment.GetFolderPath(
       System.Environment.SpecialFolder.Personal); 
      credPath = Path.Combine(credPath, ".credentials/calendar-dotnet-quickstart.json"); 

      credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
       GoogleClientSecrets.Load(stream).Secrets, 
       Scopes, 
       "user", 
       CancellationToken.None, 
       new FileDataStore(credPath, true)).Result; 

     } 
     // Create Google Calendar API service. 
     var service = new CalendarService(new BaseClientService.Initializer() 
     { 
      HttpClientInitializer = credential, 
      ApplicationName = ApplicationName, 
     }); 

     // Define parameters of request. 
     EventsResource.ListRequest request = service.Events.List("primary"); 
     request.TimeMin = DateTime.Now; 
     request.ShowDeleted = false; 
     request.SingleEvents = true; 
     request.MaxResults = 10; 
     request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; 

     // List events. 
     Events events = request.Execute(); 
     if (events.Items != null && events.Items.Count > 0) 
     { 
      foreach (var eventItem in events.Items) 
      { 
       string when = eventItem.Start.DateTime.ToString(); 
       if (String.IsNullOrEmpty(when)) 
       { 
        when = eventItem.Start.Date; 
       } 

       GoogleEvents.Add(new GoogleEvents {Title = eventItem.Summary, StartDate = eventItem.Start.DateTime}); 


      } 
     } 
    } 
} 
+0

我不知道为什么它不会允许我的公开课上的代码 –

+0

但这一天og本周没有工作,因为我想它 –