相关疑难解决方法(0)

如何基于二维数组填充WPF网格

我有一个二维的对象数组,我基本上想要将每个对象数据绑定到WPF网格中的单元格.目前我有这个工作,但我在程序上做了大部分工作.我创建了正确数量的行和列定义,然后循环遍历单元格并创建控件并为每个控件设置正确的绑定.

至少我希望能够使用模板来指定xaml中的控件和绑定.理想情况下,我想摆脱程序代码,并使用数据绑定完成所有操作,但我不确定这是否可能.

这是我目前使用的代码:

public void BindGrid()
{
    m_Grid.Children.Clear();
    m_Grid.ColumnDefinitions.Clear();
    m_Grid.RowDefinitions.Clear();

    for (int x = 0; x < MefGrid.Width; x++)
    {
        m_Grid.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(1, GridUnitType.Star), });
    }

    for (int y = 0; y < MefGrid.Height; y++)
    {
        m_Grid.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(1, GridUnitType.Star), });
    }

    for (int x = 0; x < MefGrid.Width; x++)
    {
        for (int y = 0; y < MefGrid.Height; y++)
        {
            Cell cell = (Cell)MefGrid[x, y];                    

            SolidColorBrush brush = new SolidColorBrush(); …
Run Code Online (Sandbox Code Playgroud)

.net data-binding wpf grid templates

56
推荐指数
3
解决办法
6万
查看次数

带有ItemsControl和Grid的WPF动态布局

我正在创建一个WPF表单.其中一个要求是它具有基于扇区的布局,以便可以将控件明确地放置在扇区/单元之一中.

我在下面创建了一个tic-tac-toe示例来表达我的问题:

有两种类型和一种基本类型:

public class XMoveViewModel : MoveViewModel
{
}
public class OMoveViewModel : MoveViewModel
{
}
public class MoveViewModel
{
    public int Row { get; set; }
    public int Column { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

表单的DataContext设置为以下实例:

public class MainViewModel : ViewModelBase
{
    public MainViewModel()
    {
        Moves = new ObservableCollection<MoveViewModel>()
        {
            new XMoveViewModel() { Row = 0, Column = 0 },
            new OMoveViewModel() { Row = 1, Column = 0 },
            new XMoveViewModel() { Row = 1, Column = 1 …
Run Code Online (Sandbox Code Playgroud)

wpf grid dynamic itemscontrol wpf-controls

35
推荐指数
1
解决办法
2万
查看次数