2012-04-27 5 views
2

の可変数を追加するには、(私が...これは少し曖昧である知っています)。私のプログラムはC#4.0とWPFです。基本的には、データグリッドを作成しようとしていますが、通常のタイプのセル(テキスト、ハイパーリンクなど)ではなく、複数のアイテムを保持するために各セルが必要です。これはデータグリッドでは不可能だと思ったので、私は次のことをしようとしています:スタックパネルを使用して、可変数の折り返しパネルを追加します。各ラップパネルには7つのグリッドが含まれます。各グリッドには必要なデータが格納されます(グリッドの代わりにユーザーコントロールを使用しています...)ダイナミックコントロール - 私は動的に別のコントロールにコントロールを追加する方法がある場合を把握しようとしているコントロール

これまでのコードの例...

  <StackPanel Height="559" HorizontalAlignment="Left" Margin="24,11,0,0" Name="tyStackPanel" VerticalAlignment="Top" Width="783"> 
       <WrapPanel Height="100"> 
        <Grid Width="100" Height="100"> 

        </Grid> 
       </WrapPanel> 
       <WrapPanel Height="100"> 

       </WrapPanel> 
      </StackPanel> 

可変数のラップパネルを作成する方法はありますか? (つまり、あなたがデータグリッド内の行の可変数を持っていますように)

すべてのヘルプや提案を感謝されます!

P.S.私は、少し上手くいくために何をしようとしているのかを説明する必要があります。私は一緒に表示される5つのプロパティを持つアイテムのコレクションを持っています。これらの項目は、名前(データ列の行など)と列ヘッダー(5つのプロパティのいずれでもない)でグループ化されます。コレクションを(Name、ColumnHeader)のペアでグループ化し、それぞれの「セル」にこれらの5つのプロパティを表示したいとします。私が上にそれを設定しようとしている方法では、各ColumnHeaderのためにそれに含まれている '名前'とセル/グリッドごとのWrapPanelがあります。

+1

ItemsControlとデータテンプレートを実際に読み上げる必要があります。 – Phil

+0

さて、私は間違いなく、この物の専門家ではありません... ... – keynesiancross

答えて

2

WPFは、実際には、あなたが探しているシナリオをサポートしていないDataGrid、そのうちの1つはItemsControlとその様々な派生コントロール、と非常によくこれをサポートしています。

あなたがItemsControlDataGridまたはこれらの項目のコントロールのいずれかを使用する場合、基本的に、あなたのデータ項目を保持している、との任意に、複雑なブロックすることができ、各項目についてDataTemplate Sを定義するものは何でもプロパティにItemsSourceをバインドXAML。 DataGridの場合、DataGridTemplateColumnの通常の列をスワップすることができます。これは、必要に応じて複雑にすることもできます。

は、よく、のための概要をData Templating Overviewをチェックしてください。

+0

こんにちはAvner、あなたの返事をありがとう。 ItemsControlはどこにありますか?ツールボックスには表示されません(私はWPFで無意味です...) – keynesiancross

+0

ツールボックスを使用したことはありません。私はXAMLを手作業で作成するほうがはるかに高速であることを発見しました。特に、Visual Studio 2010では、XAMLのレンダリングが非常に遅くなっています。 –

関連する問題