Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 三状态复选框样式更改_C#_Xaml_Checkbox_Styling - Fatal编程技术网

C# 三状态复选框样式更改

C# 三状态复选框样式更改,c#,xaml,checkbox,styling,C#,Xaml,Checkbox,Styling,希望更改“三状态”复选框的中间状态,以显示字母“R”而不是正方形 你知道怎么做吗 谢谢大家! @古尔 输入[类型=复选框]{ 显示:无; } 输入[类型=复选框]+标签{ 显示:内联块; 边框:1px000; 宽度:30px; 高度:30px; 位置:相对位置; } 输入[类型=复选框]:选中+标签:之后{ 内容:“R”; 显示:内联块; 字号:1.6em; } 您必须编辑ControlTemplate。添加到资源复选框模板的副本并覆盖触发器 谢谢主题是什么:ClassicByOrderDec

希望更改“三状态”复选框的中间状态,以显示字母“R”而不是正方形

你知道怎么做吗

谢谢大家!

@古尔

输入[类型=复选框]{ 显示:无; } 输入[类型=复选框]+标签{ 显示:内联块; 边框:1px000; 宽度:30px; 高度:30px; 位置:相对位置; } 输入[类型=复选框]:选中+标签:之后{ 内容:“R”; 显示:内联块; 字号:1.6em; } 您必须编辑ControlTemplate。添加到资源复选框模板的副本并覆盖触发器


谢谢主题是什么:ClassicByOrderDecorator?另外,出于好奇,您如何生成数据路径?我正在使用Syncfusion Metro Studio,它可以从角色生成路径。Blend还能够从文本生成路径。ClassicByOrderDecorator为装饰类型创建特定于主题的外观,用于经典主题。我明白了,谢谢。我通常会将复选框添加到xaml中,然后右键单击xaml设计器中的复选框。然后我从上下文菜单中选择编辑模板-编辑一个副本,它会将ControlTemplate添加到资源中。我明白了,谢谢。我有VS2010,将尝试下载新版本。同样在您的解决方案中,这意味着如果复选框的基本样式更改,它将不会反映在覆盖中,我想是吧?你怎么能做到这一点?这是CSS编辑你的CSS页面。你不必用C来做
<ControlTemplate TargetType="{x:Type CheckBox}" x:Key="CheckBoxTemplate">
            <BulletDecorator Background="Transparent" SnapsToDevicePixels="true">
                <BulletDecorator.Bullet>
                    <Themes:ClassicBorderDecorator x:Name="CheckMark" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" BorderStyle="Sunken" Background="{TemplateBinding Background}">
                        <Path x:Name="CheckMarkPath" Data="M 0 2.0 L 0 4.8 L 2.5 7.4 L 7.1 2.8 L 7.1 0 L 2.5 4.6 Z" Fill="{TemplateBinding Foreground}" FlowDirection="LeftToRight" Height="7" Margin="1,1,1,1" Width="7"/>
                    </Themes:ClassicBorderDecorator>
                </BulletDecorator.Bullet>
                <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
            </BulletDecorator>
            <ControlTemplate.Triggers>
                <Trigger Property="IsChecked" Value="false">
                    <Setter Property="Visibility" TargetName="CheckMarkPath" Value="Hidden"/>
                </Trigger>
                <Trigger Property="IsChecked" Value="{x:Null}">
                    <Setter Property="Stretch" TargetName="CheckMarkPath" Value="Uniform"/>
                    <Setter Property="Data" TargetName="CheckMarkPath">
                        <Setter.Value>
                            <PathGeometry Figures="M16.6875,43.4995803833008L16.6875,67.8745803833008 27.375,67.8745803833008 30.2167949676514,67.6519241333008 32.8359375,66.9839553833008 35.173828125,65.8999710083008 37.171875,64.4292678833008 38.80078125,62.5777053833008 40.03125,60.3511428833008 40.8046875,57.7905960083008 41.0625,54.9370803833008 40.84423828125,52.389720916748 40.189453125,50.138256072998 39.09814453125,48.182689666748 37.5703125,46.5230178833008 35.62939453125,45.200267791748 33.298828125,44.255443572998 30.57861328125,43.688549041748 27.46875,43.4995803833008 16.6875,43.4995803833008z M8.8125,36.3745803833008L28.875,36.3745803833008 33.111328125,36.6499710083008 37.0078125,37.4761428833008 40.48828125,38.8648147583008 43.4765625,40.8277053833008 45.919921875,43.353099822998 47.765625,46.4292678833008 48.9257774353027,50.067943572998 49.3125,54.2808303833008 49.0488243103027,57.6499710083008 48.2578125,60.7261428833008 46.98046875,63.4976272583008 45.2578125,65.9527053833008 43.11328125,68.0796585083008 40.5703125,69.8667678833008 34.40625,72.3745803833008 34.40625,72.5620803833008 37.3359375,74.2730178833008 39.703125,76.5464553833008 41.9296875,79.5230178833008 44.390625,83.3902053833008 57,103.593330383301 47.625,103.593330383301 36.375,84.7495803833008 34.8515625,82.3179397583008 33.375,80.2730178833008 30.3984375,77.2495803833008 27.1171875,75.5386428833008 23.15625,74.9995803833008 16.6875,74.9995803833008 16.6875,103.593330383301 8.8125,103.593330383301 8.8125,36.3745803833008z" />
                        </Setter.Value>
                    </Setter>
                </Trigger>
                <Trigger Property="IsPressed" Value="true">
                    <Setter Property="Background" TargetName="CheckMark" Value="{DynamicResource {x:Static SystemColors.ControlBrushKey}}"/>
                </Trigger>
                <Trigger Property="IsEnabled" Value="false">
                    <Setter Property="Background" TargetName="CheckMark" Value="{DynamicResource {x:Static SystemColors.ControlBrushKey}}"/>
                    <Setter Property="Fill" TargetName="CheckMarkPath" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
                    <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
                </Trigger>
            </ControlTemplate.Triggers>
        </ControlTemplate>

<CheckBox IsThreeState="True" Template="{StaticResource CheckBoxTemplate}"/>