解决方案 »

  1.   

    设置CommandParameter为不同内容自己区别
      

  2.   


    不知道有没有 commdName 这个参数 有的话 判断小就okbtn commdName="xx"btn commdName="oo"
    if(commdName=="xx")
        执行方法1
    else
      执行方法2
      

  3.   

    怎么设置呢?
    哦,我看错了。
    用一楼的方法,在你的Combobox声明里指定  CommandParameter的值。
      

  4.   

    貌似Combbox控件是没有CommandParameter的吧?
      

  5.   

    怎么设置呢?
    哦,我看错了。
    用一楼的方法,在你的Combobox声明里指定  CommandParameter的值。我貌似Combbox控件是没有CommandParameter的吧?我知道Button有
      

  6.   

    其实随便找个属性就ok了 比如Tag前台
          <ComboBox Height="23" HorizontalAlignment="Left" Margin="60,54,0,0" Name="comboBox1" VerticalAlignment="Top" Width="120" Tag="1" DataContextChanged="comboBox1_DataContextChanged" />
            <ComboBox Height="23" HorizontalAlignment="Left" Margin="60,0,0,151" Name="comboBox2" VerticalAlignment="Bottom" Width="120"  Tag="2" />
    后台  object sender 这个参数要有的 private void comboBox1_DataContextChanged(object sender, DependencyPropertyChangedEventArgs e)
            {
                if (((ComboBox)sender).Tag.ToString() == "1")
                    ;//按钮1
                else
                    ;//按钮2
            }
      

  7.   

    9楼正解。 用TAG属性来标识控件。 其实随便找个属性,给他一个值。就知道是哪个了。
      

  8.   

    我找到CommandParameter了,但是我用的不是selectedchange事件,ICommand里怎么写呢?]<cmd:EventToCommand Command="{Binding SelectionChangedCommand}" CommandParameter="User"/>
    [code=csharp] public ICommand SelectionChangedCommand
            {
                get
                {
                    return new RelayCommand
                    (
                        () =>
                        {
                            DataSet ds = BaseInfo.GetGenerList("", Type, "");
                          
                        }
                    ); [/cod]
      

  9.   

    我感觉 还不如  让它们两个共用一个 SelectionChanged 事件,以它们的Tag 来区分。来的简单些
      

  10.   

    让我来实现这个需求的话,我不会用command。我的做法是:公开两个属性SelectedUser,SelectedId。在两个属性的Set方法中调用你的方法即可。简单,易读,而且如果你后面的逻辑很可能用到这两个属性。
    最关键的是,你不用引用那个blend里面提供的event to command的那个dll了。
      

  11.   

    忘了一点,两个combobox要分别绑定我这两个属性。
      

  12.   


    其实我是asp.net会点微软的东西都是事件驱动的   触发事件的时候可以有参数传过来  然后你解析下参数就oK  坐等大牛出码
      

  13.   


    selectedchange事件我会写,现在我就是在学Icommand事件,当然到搞懂搞定为止啦~~~
      

  14.   


    我想写数据驱动的啊,不然直接写Winform的好了
      

  15.   


    selectedchange事件我会写,现在我就是在学Icommand事件,当然到搞懂搞定为止啦~~~
    我没有说用事件。我这个也是用数据绑定。完全可单元测试。
      

  16.   

    忘了一点,两个combobox要分别绑定我这两个属性。set 要怎么写呢
      

  17.   

    private string selectedObj;
            public string SelectedObj
            {
                get { return selectedObj; }
                set
                {
                    selectedObj = value;
                    this.RaisePropertyChanged("SelectedObj");
                    DataSet ds = BaseInfo.GetGenerList("", Type, "");...
                }
            }
      

  18.   


    我的代码就是这么写的 
    我的意思是cmbUser被触发的时候Type的值是User,cmbID被触发的时候传进来的参数Tpye是ID
    private string type;
            public string Type
            {
                get { return type; }
                set
                {
                    type = value;
                    this.RaisePropertyChanged("Type");
                }
            }
      

  19.   


    我的代码就是这么写的 
    我的意思是cmbUser被触发的时候Type的值是User,cmbID被触发的时候传进来的参数Tpye是ID
    private string type;
            public string Type
            {
                get { return type; }
                set
                {
                    type = value;
                    this.RaisePropertyChanged("Type");
                }
            }

    为啥搞这么麻烦。我的意思一直是: 弄两个属性,一个SelectedId,一个是SelectedUser,SelectedUser变的的时候Type自然是User,SelectedId变的时候Type就是Id。Type属性删除掉,这个属性无用。
      

  20.   


    我的代码就是这么写的 
    我的意思是cmbUser被触发的时候Type的值是User,cmbID被触发的时候传进来的参数Tpye是ID
    private string type;
            public string Type
            {
                get { return type; }
                set
                {
                    type = value;
                    this.RaisePropertyChanged("Type");
                }
            }

    为啥搞这么麻烦。我的意思一直是: 弄两个属性,一个SelectedId,一个是SelectedUser,SelectedUser变的的时候Type自然是User,SelectedId变的时候Type就是Id。Type属性删除掉,这个属性无用。
    你上面写的我看不懂,设置两个属性后,怎么传进来的值?