私はC#/ XAMLにかなり慣れておらず、データバインディングを行うのに苦労しています。c#二重配列とXAMLグリッド間のデータバインディングを実行したいと思います。
// This double array is filled with Square objects which are elements of the map
Square[,] worldMapGrid = new Square[4,4];
// For showing an very simple example, we can fill it like this:
worldMapGrid[0,0] = new SquareMountain();
worldMapGrid[0,1] = new SquareDesert();
worldMapGrid[0,1] = new SquarePrairie();
...
XAMLコードにこれがあります:
<UniformGrid x:Name="MapGrid" Width="600" Height="600" Columns="4" Rows="4">
FILL WITH SQUARES HERE
</UniformGrid>
そして私のResourceDictionnaryで:
<Style x:Key="ButtonSquare" TargetType="{x:Type Button}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Viewbox>
<Rectangle x:Name="path1" Fill="CHANGE HERE"/>
</Viewbox>
<ControlTemplate.Triggers>
...
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
UniformGrid
名前付きMapGridにオブジェクトを入力し、のオブジェクトのタイプに応じてButtonSquare
Rectanglecolorプロパティを設定したいと思います。実際には、はの視覚的表現です。Fill
worldMapGrid
MapGrid
worldMapGrid
したがって、これら2つのオブジェクト間でデータバインディングを実行したいのですが、この概念に苦労しています。誰かがこれを行う方法を教えてもらえますか?