wpf - 为什么在我的 WPF View 中标签控件的内容文本不可见?

标签 wpf xaml

我有以下标记:

<StackPanel Grid.Row="0" Orientation="Horizontal">
    <StackPanel Orientation="Horizontal" Visibility="{Binding OrgListVisibility}">
        <Label Content="Org:" />
        <ComboBox ItemsSource="{Binding OrgSelectList, NotifyOnSourceUpdated=True}" SelectedValuePath="Key" DisplayMemberPath="Value" SelectedItem="{Binding OrgId}" />
    </StackPanel>
    <StackPanel Orientation="Horizontal" Visibility="{Binding BranchListVisibility}">
        <TextBlock Text="Branch:" Style="{StaticResource FormLabel}" />
        <ComboBox x:Name="BranchList" ItemsSource="{Binding BranchSelectList}" SelectedValuePath="Key" DisplayMemberPath="Value" SelectedItem="{Binding BranchId}" />
    </StackPanel>
</StackPanel>

但是,当我运行应用程序时,只有 TextBlock 中的文本可见,而不是 Label 中的文本。后者位于可视化树中,在深处有一个 TextBlock ,但据我所知,这就是。

按要求:以下是 FormLabel 的样式:

<Style TargetType="TextBlock" x:Key="FormLabel">
    <Setter Property="Height" Value="20" />
    <Setter Property="Margin" Value="10" />
    <Setter Property="TextAlignment" Value="Right" />
    <Setter Property="VerticalAlignment" Value="Center" />
</Style>

类似的问题: 当我将组合框绑定(bind)到泛型类的实例集合时,我发现了一个几乎类似的问题。这些项目的文本根本没有显示,但它们出现在组合框中。通过知道我所寻找的项目的位置正确地级联到第二个组合框(具有可见项目)来选择其中一个,我可以看到正确但不可见的项目已被选择。

一旦我将项目源更改为非通用对象列表,下拉列表中的项目就再次可见。

最佳答案

代码看起来不错,正如您在评论部分提到的,它占用布局空间,那么标签的颜色和包含布局的背景颜色很可能是相同的。

要解决此问题,请尝试提供一些不同的背景和前景色,例如红色或蓝色的标签。希望这有帮助

关于wpf - 为什么在我的 WPF View 中标签控件的内容文本不可见?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41929445/

相关文章:

c# - 如何在外部 Win32 应用程序窗口上添加 WPF 覆盖?

c# - 什么在我的应用程序中创建新线程?

c# - WPF C# 锁定/解锁按钮并执行线程

c# - Wpf:图像控制不支持 .TGA 文件

wpf - INotifyPropertyChanged.PropertyChanged 始终为 NULL

c# - AvaloniaUI - 如何直接在 Canvas 上绘制

c# - 在 silverlight 和 WPF 中实现多语言应用程序的最佳方式

c# - DataGrid CellTemplate TabNavigation

wpf - 如何使基于 XAML 的 UI 开发变得可以忍受?

c# - 具有模板支持的 Windows Phone 自定义用户控件