DevExpress里面的GridControl我设置一列为按钮时,如何设置单行的按钮点击事件?
我现在遇到的问题是添加了事件后:
this.repositoryItemButtonEdit1.ButtonClick += new DevExpress.XtraEditors.Controls.ButtonPressedEventHandler(this.repositoryItemButtonEdit1_ButtonClick);  
出现点击一行(触发的事件是:设置按钮不可用),可是然后焦点一失去,按钮又可用了,不知道为什么?
想要的效果是可以单击按钮设置单行按钮而不是整列的事件触发

解决方案 »

  1.   

    没看懂你说什么.DevExpress有些事件是ajax的,不带viewstate,所以也无法影响页面的控件状态.你可能得用js在回调函数里处理一下.
      

  2.   

    不好意思,我这个winform,我应该说的很清楚吧
      

  3.   

    把按钮列绑定到后台的某个属性上,
    单击时修改该属性,重新绑定,
    默认绑定时跟据该属性列的值设置其Enable和Disabled换句话说吧:你的Disabled的状态需要保存在绑定的实体上!
    不然重新绑定时会被覆盖掉,不知道说清楚没
      

  4.   

      RepositoryItemButtonEdit rib = new RepositoryItemButtonEdit();
                rib.TextEditStyle = TextEditStyles.HideTextEditor;
                rib.Buttons[0].Kind = ButtonPredefines.Glyph;
                rib.ButtonClick += new DevExpress.XtraEditors.Controls.ButtonPressedEventHandler(this.GBDetail);//时间委托
                rib.Buttons[0].Caption = "详细信息";
                rib.Buttons[0].Visible = true;
                gridView1.Columns["变数"].ColumnEdit = rib;
    //事件
    private void GBDetail(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
            {
               //获取当前行的index
                int RowIndex = gridView1.FocusedRowHandle;
                DataRow row = gridView1.GetDataRow(RowIndex);//获取当前行
               }
      

  5.   

    14楼的代码是对某一行添加button,也可在该行添加多个button。 rib.TextEditStyle = TextEditStyles.HideTextEditor;这个代码将改行的值隐藏掉,也可以设置其他属性。