Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从列表字符创建DataGrid矩阵?_C#_Wpf_Visual Studio_Xaml_Datagrid - Fatal编程技术网

C# 如何从列表字符创建DataGrid矩阵?

C# 如何从列表字符创建DataGrid矩阵?,c#,wpf,visual-studio,xaml,datagrid,C#,Wpf,Visual Studio,Xaml,Datagrid,我在文本框中显示带有字符的列表,但间距不均匀 A B C D E F G H I J K L M N O P Q R S T U V W X Y 如何将其绑定到WPFDataGrid,使其显示为一个统一的5x5矩阵 还是有其他方法使它统一 A B C D E F G H I J K L M N O P Q R S T U V W X Y C# 公共字符A、B、C、D、E、F、G、H、I、J、K、L、M、N、O、P、Q、R、S、T、U、V、W、X、Y; 公共列表myList=

我在
文本框
中显示带有
字符的
列表
,但间距不均匀

A B C D E
F G H I J
K L M N O
P Q R S T
U V W X Y


如何将其绑定到WPF
DataGrid
,使其显示为一个统一的5x5矩阵

还是有其他方法使它统一

A B C D E  
F G H I J  
K L M N O  
P Q R S T  
U V W X Y

C#

公共字符A、B、C、D、E、F、G、H、I、J、K、L、M、N、O、P、Q、R、S、T、U、V、W、X、Y; 公共列表myList=新列表() { A、 B,C,D,E, F、 G,H,I,J, K、 L,M,N,O, P、 Q,R,S,T, U、 V,W,X,Y } 公共可观测集合myCollection=新可观测集合(myList);
XAML

<DataGrid x:Name="dataGrid" 
          HorizontalAlignment="Left" 
          Height="299" 
          Margin="191,399,0,0" 
          VerticalAlignment="Top" 
          Width="360"/>

除了可以使用单间距字体外,如

<TextBlock FontFamily="Lucida Console">
    <Run>ABCDE</Run>
    <LineBreak/>
    <Run>FGHIJ</Run>
    <LineBreak/>
    <Run>KLMNO</Run>
    <LineBreak/>
    <Run>PQRST</Run>
    <LineBreak/>
    <Run>UVWXY</Run>
</TextBlock>


看看这些帖子:,我更新了我的代码。我使用字符作为列表中的可变占位符,可以更改为不同的内容。我使用了itemsControl.ItemsSource=new List(),它目前正在工作。我必须调整它并告诉你它是如何运行的。@MattMcManis你当然可以将任何东西放入Items控件中。只需确保ItemTemplate可以显示它。
<TextBlock FontFamily="Lucida Console">
    <Run>ABCDE</Run>
    <LineBreak/>
    <Run>FGHIJ</Run>
    <LineBreak/>
    <Run>KLMNO</Run>
    <LineBreak/>
    <Run>PQRST</Run>
    <LineBreak/>
    <Run>UVWXY</Run>
</TextBlock>
<ItemsControl ItemsSource="ABCDEFGHIJKLMNOPQRSTUVWXY">
    <ItemsControl.ItemsPanel>
        <ItemsPanelTemplate>
            <UniformGrid Columns="5"/>
        </ItemsPanelTemplate>
    </ItemsControl.ItemsPanel>
    <ItemsControl.ItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding}" TextAlignment="Center"/>
        </DataTemplate>
    </ItemsControl.ItemTemplate>
</ItemsControl>
itemsControl.ItemsSource = new List<string>()
{
    "A", "B", "C", "D", "E",
    "F", "G", "H", "I", "J",
    "K", "L", "M", "N", "O",
    "P", "Q", "R", "S", "T",
    "U", "V", "W", "X", "Y"
};
itemsControl.ItemsSource = new List<char>()
{
    'A', 'B', 'C', 'D', 'E',
    'F', 'G', 'H', 'I', 'J',
    'K', 'L', 'M', 'N', 'O',
    'P', 'Q', 'R', 'S', 'T',
    'U', 'V', 'W', 'X', 'Y'
};
itemsControl.ItemsSource = "ABCDEFGHIJKLMNOPQRSTUVWXY";