0

多次元リストを設定したいと思います。参考までに、プロパティを変更するためのプロパティ グリッドを持つコントロールを作成しています。

コントロールを動的に追加しています。たとえば、サンプル no.of スタック パネルを動的に追加しています。スタック パネル内に、プロパティ グリッドを使用したテキスト ボックス コントロールなどの no.of 要素を追加しています。

1 つのスタック パネルにすべてのテキスト ボックスを追加している場合は、リストを使用でき、インデックスに基づいて取得できることを意味します。しかし、スタックパネルも考慮してプロパティを追加したいです。

追加したいデータは次のとおりです。

List
(
 [0] => List
  (
    ([0] => List
     (
       [0] => FillColor
       [1] => BorderColor
       [2] => BorderWidth
       [3] => Text
       [4] => FontSize
       [5] => FontFamily
      )
   )
[1] => List
    (
 And so on....

以下に基づいて、テキスト ボックスのプロパティ コレクションを取得できます。

internal class PropertiesCollection : List<textBoxPropertiesProperties>
{
}

internal class textBoxProperties
{
}

PropertiesCollection collection = new PropertiesCollection ();
textBoxProperties properties=new textBoxProperties();
collection.Add(textBoxProperties);

textBox1 properties---> collection[0]
textBox2 properties ....> collection[1]

しかし、どのスタックパネルに配置されているかに基づいて取得したいと考えています。次のようなものが必要です

textBoxProperties[stackpanel1][textbox1]
textBoxProperties[stackpanel1][textbox2]
textBoxProperties[stackpanel2][textbox1]
textBoxProperties[stackpanel2][textbox2].

どうすればこれを入手できますか?

4

1 に答える 1

0

独自の階層を作成するのではなく、WPF に組み込まれているツリー構造を使用することもできます。VisualTreeHelper クラスを検索するか、次の記事を参照してください。 -and-論理ツリーイン

于 2012-07-08T18:05:59.307 に答える