Chr*_*ert 5 wpf controls text label
我想知道,这是获得WPF中众所周知的标签输入[或输出,无关紧要]组合的最佳和最快捷方式.它是一个简单的任务,只想到"对象"ME的快速输出:
姓名 - 基督徒
年龄 - 28岁
心情 - 很好
我知道,我可以使用带有TextBlocks的Grid.但说实话,这个"短"的XAML几乎是半页(每个标签上的RowDefinitions,ColDefs,Grid.Col)
另一种方法,使用三个StackPanels(水平)和一个垂直方向似乎也有点愚蠢.在这种情况下,我必须给每个Label一个固定的宽度,以使缩进正确.它只是没有"感觉"正确.
所以,鉴于上面的情况,你得到一个自定义对象,只需要将3-6属性转换为只读的GUI,你会怎么做(在WPF,Silverlight中,如果你真的心情:).
当然,我可以为此编写一个usercontrol.但是为什么重新发明轮子,如果它可能已经在那里......
最后,为了进一步说明,我刚才在现实生活中创建的例子就是这篇文章的原因:
<StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock Text="Log Count" Width="100"/>
<TextBlock Text="{Binding LastLogRun.LogMessageCount}"/>
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock Text="Start Time" Width="100"/>
<TextBlock Text="{Binding LastLogRun.StartTime}"/>
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock Text="End Time" Width="100"/>
<TextBlock Text="{Binding LastLogRun.EndTime}"/>
</StackPanel>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)
如果您使用 3.5sp1,则可以在绑定中使用 StringFormat。像这样的东西应该有效......
<TextBlock Text="{Binding LastLogRun.LogMessageCount, StringFormat={}Log Count - {0}}" />
Run Code Online (Sandbox Code Playgroud)