c#-获取之前点击过的按钮,并设置其状态

一个流程中获取前几个步骤选中的按钮并保持选中状态
自定义按钮控件,在点击后重新设置背景图片无效之后,想到通过按钮是否有焦点,通过样式中设置焦点时默认的图片背景来解决。
样式中的触发器

                                <Trigger Property="IsFocused" Value="true">
                                    <Setter Property="Background" TargetName="Border">
                                        <Setter.Value>
                                            <ImageBrush ImageSource="/Images/MatchSetButton.png"/>
                                        </Setter.Value>
                                    </Setter>
                                    <Setter Property="BorderBrush" TargetName="Border" Value="transparent"/>
                                    <Setter Property="BorderThickness" TargetName="Border" Value="0"/>
                                </Trigger>

使用示例

				//获取某一步骤中所有的子控件
                var btns = ControlByDynamic.AddControlDynamic.GetChildObjects<Button>(this.PhasePanel, "");
                //遍历子控件
                foreach (var bt in btns)
                {
                    //如果是我们已经选择过的按钮,设置焦点
                    if (bt.Content == setPhaseLabel.Content)
                    {
                        bt.Focus();
                    }
                }

猜你喜欢

转载自blog.csdn.net/qq_34248512/article/details/83341365