最近项目有个需求,就是在GridControl中显示的文本不能有回车换行,而在ToolTip中则要显示相应的格式
因为某些原因不能在数据源处理 因此只好另辟蹊径 废话不多说了 上代码再说
<Style x:key='AAA' TargetType="TextBox"> <Style.Triggers> <Trigger Property="IsReadOnly" value="True"> <Setter Property="Text" Value="{Binding RelativeSource={RelativeSource Self},Path=ToolTip,Converter={StaticResource rc}}"/> </Trigger> </Style.Triggers> </Style>
这里面采用了触发器 当控件为readonly时 根据Tooltip内容显示Text内容
置于转换器我就不上代码了 根据需求去处理就好 下面写一下GridControl中绑定CellTemplte的问题
我这里面用了DEV的GridControl 估计没啥区别 上代码再说
<dxg:GridConlum.CellTemplate> <DataTemplate> <textBox IsReadOnly = "True" ToolTip="{Binding RowData.Row.字段名,Mode=OneWay}" Style="{StaticResource AAA}"/> </DataTemplate> <dxg:GridConlum.CellTemplate>
不得不说这里面有些东西知道了很简单不知道很烦 比如说这里面的RowData.Row.字段名 这种绑定如果不知道真的会气死人
好了 基本上原理就是利用样式的触发器和数据转换器 将自身的属性作为转换器参数 将要设定的属性写在样式Setter中
希望对各位小伙伴们有所帮助吧