【问题标题】:WPF - Global Properties and User ControlsWPF - 全局属性和用户控件
【发布时间】:2011-05-20 18:21:22
【问题描述】:

问候

我有一个包含多个用户控件的主窗口。我将通过示例图片为您提供更好的视图:

    <!--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 从哪个 UserControl 发送数据)?

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

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

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

【问题讨论】:

    标签: c# wpf properties controls


    【解决方案1】:

    我想,你的出发点是

    根据图像上按下的按钮,这些控件之一变为可见

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

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-01
      • 1970-01-01
      • 2014-10-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多