2

私は WPF デスクトップ アプリケーションを作成しており、カレンダーのように見える必要があるビューがあります。表示する必要があるのは 4 週間 (固定) だけです。各週にはアイテムのリストがあります (おそらく ListView で表されます)。私は2つのアプローチの間で議論しています:

  1. レイアウト コントロールの使用 - 各「セル」に ListView が含まれるグリッド コントロール

  2. ListView + GridView を使用し、スタイルをカスタマイズしてカレンダーのように見せる

私の意見では、レイアウト コントロールの方が実装しやすいと思いますが、何か汚い感じがします。基本的に、それぞれが ListView を含む 28 個のセルをハードコーディングします。しかし、繰り返しますが、それは簡単です。

私は ListView/GridView の方がエレガントだと思っていますが、それでもセルごとに ListView を作成する必要があります。次に、カレンダーのように見え、あまり似ていないようにコントロールをスタイルする方法を考え出す必要があります。テーブル。

考え?

4

3 に答える 3

3

UniformGrid で ListBox を使用できます。これにより、基本レイアウトの構築が処理されます。表示される日が現在の月にない場合にスタイルの変更を実装するために、現在の月に少しトリガーします。

次に、タスク/会議などを表示するために、テンプレートの一部として ListView または ListBox を毎日使用できます。

全体が、「日」とその内容を表すオブジェクトのコレクションにバインドされます。

ListBox は通常、ItemsControl のベースとして適しています。

また、Calendar コントロールが WPF でどのように構築されているかを確認する必要があります。いくつかのアイデアが得られるかもしれません。

于 2009-04-28T13:34:39.930 に答える
1

おそらく、次の例が役に立ちます: http: //www.codeproject.com/KB/WPF/WPFOutlookCalendar.aspx

于 2009-04-28T14:56:53.460 に答える
1

WPFで動作するかもしれないSilverlight Toolkitのソースを見てください

于 2009-04-28T17:41:46.390 に答える