我正在WPF
使用telerik:RadGridView
我必须ReadOnly
在某些条件下创建列的应用程序中工作。条件值位于集合中,该集合绑定到gridview
以及来自 的一些值ViewModel
。
//Xaml:
<telerik:GridViewComboBoxColumn ItemsSource="{Binding StatusList, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Style="{StaticResource SimplifiedView}" SelectedValueMemberPath="StatusId" DisplayMemberPath="StatusName" DataMemberBinding="{Binding StatusName, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}">
<telerik:GridViewComboBoxColumn.CellStyle>
<Style TargetType="{x:Type telerik:GridViewCell}">
<Style.Triggers>
<DataTrigger Binding="{Binding MemberId, Converter={StaticResource IntBoolConverter}}" Value="False" >
<Setter Property="Background" Value="White" />
</DataTrigger>
</Style.Triggers>
</Style>
</telerik:GridViewComboBoxColumn.CellStyle>
</telerik:GridViewComboBoxColumn>
我必须使用将MemberId
和其他值传递ViewModel
给转换器并进行一些返回boolean
值的计算。将值分配给使其工作的IsReadOnlyBinding
属性。GridViewColumn
//静态数组:
<telerik:RadWindow.Resources>
<x:Array x:Key="CustomValues"
Type="sys:String"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib">
<sys:String>Yes</sys:String>
<sys:String>No</sys:String>
</x:Array>
</telerik:RadWindow.Resources>
IsReadOnly="{Binding Source={StaticResource CustomValues}, Converter={StaticResource MultipleValueForReadOnly}}"
我已经处理了上面的代码,其中静态值作为数组传递给转换器,但我需要将动态值发送给MemberId,blnReadFlag,ItemName
转换器。
我怎样才能做到这一点?