- <DataGridTemplateColumn.CellTemplate>
- <DataTemplate>
- <StackPanel Orientation="Horizontal">
- <xctk:ToggleSwitch
- Width="30"
- Height="15"
- BorderBrush="Transparent"
- BorderThickness="0"
- CheckedBackground="Orange"
- CheckedContent="On"
- CornerRadius="10"
- IsChecked="{Binding Path=DetailsVisibility, RelativeSource={RelativeSource AncestorType={x:Type DataGridRow}}, Converter={StaticResource VisibilityToNullableBooleanConverter}, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"
- ThumbElasticity="20"
- ThumbHeight="20"
- ThumbWidth="20"
- UncheckedBackground="LightGray"
- UncheckedContent="Off ">
- <i:Interaction.Triggers>
- <i:EventTrigger EventName="IsCheckedValueChanged">
- <i:InvokeCommandAction Command="{Binding RelativeSource={RelativeSource AncestorType=UserControl}, Path=DataContext.DetailCommand}" CommandParameter="{Binding RelativeSource={RelativeSource AncestorType={x:Type DataGridRow}}}" />
- </i:EventTrigger>
- </i:Interaction.Triggers>
- </xctk:ToggleSwitch>
- </StackPanel>
- </DataTemplate>
- </DataGridTemplateColumn.CellTemplate>
复制代码 这里要特别注意:有些时候,我们为了手动开关这个按钮来显示Detail 的详细信息,以是就必要对DataGrid 添加RowDetailsVisibilityMode属性设置,这个属性有三个值(VisibleWhenSelected、)
名称值说明Collapsed0 不针对任何行显示行详细信息部分。
Visible1 针对所有行显示行详细信息部分。
VisibleWhenSelected2 仅针对选定行显示行详细信息部分。
在利用ToggleButton 控制Detail 模板内容显示隐蔽的时候,这个RowDetailsVisibilityMode属性应该设置为Collapsed。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |