我有一个简单的问题(但对于像我这样的初学者来说却不那么容易)。
我必须在我的XAML代码中设置对象的参数。这应该与一个应该如下的类相关:
public class Foo
{
public string ID { get; set; }
public string Type { get; set; }
public Foo(string id, string type)
{
ID = id;
Type = type;
}
}
这是XAML:
<Style TargetType="{x:Type graphsharp:EdgeControl}">
<Setter Property="Foreground" Value="<!--Something-->" />
</Style>
我想从“Foo”类的“Type”字段设置该值,该字段可以是“静态”或“动态”。
我应该使用哪种WPF绑定?
注意:我无法获得必须编辑的对象(EdgeControl)的“名称”。
感谢您的耐心, -G。
编辑:这是我此刻尝试的......
<DataTemplate x:Key="myTemplate" DataType="{x:Type local:Foo}">
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding Type}" Value="static">
<Setter TargetName="???" Property="Foreground" Value="Gray" />
</DataTrigger>
<DataTrigger Binding="{Binding Type}" Value="dynamic">
<Setter TargetName="???" Property="Foreground" Value="Aqua" />
</DataTrigger>
</DataTemplate>
但是,正如我所说,我没有对象的名称,也无法在其他地方设置。这就是为什么我要求另一个解决方案(或修复此问题,也许)。
再次感谢您的耐心等待。