WPF - 全局属性和用户控件

时间:2010-12-06 03:41:32

标签: c# wpf properties controls

问候

我有一个主窗口,可以容纳多个用户控件。我将通过示例图片为您提供更好的视图: example

    <!--Player 1-->
    <local:ucRaces x:Name="ucRacesP1" Width="78" Height="33" Visibility="Hidden" />
    <Image Name="imageRacePlayer1" Height="27" Width="27" />

    <!--Player 2-->
    <local:ucRaces x:Name="ucRacesP2" Width="78" Height="33" Visibility="Hidden" />
    <Image Name="imageRacePlayer2" Height="27" Width="27" />
  • UC3和UC4是相同的用户控件
  • UC3的名称为ucRacesP1(默认隐藏)
  • UC4的名称为ucRacesP2(默认隐藏)
  • 根据在图像上按下的按钮,其中一个控件变为可见。

现在我要做的是,当一个人在UC3中选择一个值时,需要设置player1的属性。当在UC4中选择一个值时,我需要设置player2的属性。我想用属性做这个,但在搜索属性和WPF时,我偶然发现了依赖属性。这开始让我感到困惑,我需要使用普通的属性或这些依赖属性。

  • 我如何知道是否必须设置player1值或player2值(这取决于哪个UserControl发送数据)?

  • 如何最好地为整个应用程序保存这些值?

  • 将用户控件置于开头(由于定位)隐藏的最佳方式还是有更好的选择?

感谢您抽出时间阅读我的问题!

1 个答案:

答案 0 :(得分:1)

我认为,你的要点是

  

根据在图像上按下的按钮,其中一个控件变为可见

1-图像上有某些按钮,用户可以点击图像。

2-您可以使用ICommand界面来超越UI中的特定命令,即如果用户按下Palyer1,如果用户按下Player2,则执行Player1Command,您可以执行Player2Command。

3-在player1和player2中可能存在代码重复但不担心,您可以随时重构代码,将命令分派给相应的命令处理程序。