-1
<ContentControl Width="130"
                Height="130"
                Canvas.Top="60"
                Canvas.Left="50"
                ***Selector.IsSelected="True"***
                Style="{StaticResource DesignerItemStyle}">

我想通过使用后面的代码Selector.IsSelected来设置属性。ContentControl但我不知道该怎么做。请帮助我,给我一些例子。

4

2 回答 2

3

如果要在代码中设置附加的依赖属性,请执行此操作

        ContentControl x;
        //To set the value
        x.SetValue(Selector.IsSelectedProperty, true);

        //To Clear the value
        x.ClearValue(Selector.IsSelectedProperty);

        //Set using the static function on Selector
        Selector.SetIsSelected(x, true);
于 2012-07-24T04:55:17.910 回答
2

要访问代码隐藏中的控件,您首先需要为其提供名称 -

<ContentControl 
    x:Name=""ContentControl1"
    Width="130" 
    Height="130" 
    Canvas.Top="60" 
    Canvas.Left="50" 
    ***Selector.IsSelected="True"*** 
    Style="{StaticResource DesignerItemStyle}"> 

然后您可以在代码中访问它并设置其他答案中提到的值 -

ContentControl1.SetValue(Selector.IsSelectedProperty, true);

除此之外,最好查看在代码隐藏或 ViewModel(MVVM) 中创建属性并将其直接绑定到您的控件,如下所示 -

<ContentControl 
    Width="130" 
    Height="130" 
    Canvas.Top="60" 
    Canvas.Left="50" 
    Selector.IsSelected="{Binding IsSelectedBoolProperty, Mode=OneWay}"
    Style="{StaticResource DesignerItemStyle}"> 

如果您的窗口中有很多控件,此技术将非常有用,我建议您查看在应用程序中实现 MVVM 以避免在代码隐藏中执行此类操作。

于 2012-07-24T06:04:39.143 回答