C# 直观地表示文件列表
我有一个字符串数组;例如: {“阿尔法”,“好极了”,“查理”} 我希望以某种方式显示表单上的每个项目,以便在显示数据后更改其样式(颜色、重量等)。我不想使用treeview。我的目标是让它像一句话或一行一行地读 我可以更改文本框中特定文本的视觉样式吗C# 直观地表示文件列表,c#,wpf,C#,Wpf,我有一个字符串数组;例如: {“阿尔法”,“好极了”,“查理”} 我希望以某种方式显示表单上的每个项目,以便在显示数据后更改其样式(颜色、重量等)。我不想使用treeview。我的目标是让它像一句话或一行一行地读 我可以更改文本框中特定文本的视觉样式吗 我应该使用循环为每个字符串创建标签吗?如果是这样,我如何定位每个标签,使其与表单上的其他元素正确对齐?如果我理解正确,您确实可以为每个标签设置一个文本框 您可以更改文本框的字体和背景/前景。您还可以在运行时创建和定位它们,以处理它们的数量和位置
我应该使用循环为每个字符串创建标签吗?如果是这样,我如何定位每个标签,使其与表单上的其他元素正确对齐?如果我理解正确,您确实可以为每个标签设置一个文本框 您可以更改文本框的字体和背景/前景。您还可以在运行时创建和定位它们,以处理它们的数量和位置 您也可以在运行时创建标签,只需为文本框和标签使用相同的Y轴,然后为每个“新行”跳转Y位置一个设置的量。您可以使用TextBlock 基本的例子可以是: 亚马尔:
我忘了补充一点,这些可视元素的创建必须使用委托从单独的线程调用。您可以使用RichTextBox并为每次运行应用不同的样式。
<StackPanel>
<TextBlock Name="Text1" Margin="10" Foreground="Red">
This is a TextBlock control<LineBreak />
with multiple lines of text.
</TextBlock>
<Button Content="Change Colors" Click="Button_Click"/>
</StackPanel>
private void Button_Click(object sender, RoutedEventArgs e)
{
Text1.Foreground = Brushes.Pink;
}