1

我在 TabControl 中使用以下 ItemTemplate 来设置选项卡项的内容和选项卡项的前景色。这两个属性在同一个 ViewModel 类中可用:

       <TabControl.ItemTemplate>
            <DataTemplate>
                <DockPanel>
                    <ContentPresenter 
                        Content="{Binding Path=Name, UpdateSourceTrigger=PropertyChanged}"
                        TextElement.Foreground="{Binding Path=Color, Converter={converter:ColorToBrushConverter}, UpdateSourceTrigger=PropertyChanged}"/>
                </DockPanel>
            </DataTemplate>
        </TabControl.ItemTemplate>

至于“名称”属性,一切都按预期工作。修改属性时,选项卡项上的名称会更改。但是对于“颜色”属性,这不起作用。我不断得到

System.Windows.Data 错误:40:BindingExpression 路径错误:在“对象”“字符串”(HashCode=2145491359)上找不到“颜色”属性。绑定表达式:路径=颜色;DataItem='String' (HashCode=2145491359); 目标元素是'ContentPresenter'(名称='');目标属性是“前景”(类型“画笔”)

将 TextElement.Foreground 设置为恒定颜色(例如“白色”)时,它可以工作。

我的绑定有什么问题?

4

0 回答 0