dev控件apsxgridview记录2

1)操作列:增加、编辑和删除

 <dx:GridViewCommandColumn Caption="操作" VisibleIndex="1" HeaderStyle-HorizontalAlign="Center" Width="8%">
                        <EditButton Text="编辑" Visible="True">                       
                        </EditButton>
                        <NewButton Text="添加" Visible="false">
                        </NewButton>
                        <DeleteButton Text="删除" Visible="true" ></DeleteButton>
                        <UpdateButton Text="保存" Visible="True">                       --编辑和添加的保存
                        </UpdateButton>
                        <CancelButton Visible="true" Text="取消">                         --编辑和添加的取消
                        </CancelButton>
                        <ClearFilterButton Visible="True" Text="取消">                   --查询的取消
                        </ClearFilterButton>
                        <HeaderStyle HorizontalAlign="Center"></HeaderStyle>
                    </dx:GridViewCommandColumn>

编辑和添加的信息的显示形式也可以改变有相应的属性例如:

 <SettingsEditing EditFormColumnCount="3" Mode="EditForm"></SettingsEditing>

这是以editform的显示形式,每行显示3条数据

注:在事件中必须写:

 e.Cancel = true;
 aspxGridView.CancelEdit();

否则会报错

2) 如果添加不想放到列表中可以单独拿出来,从页面的“查看源文件”中找到添加的js函数,拿过来就可以了

例如:<div class="CommonBtn  MenuBtn" style="float: left;width: 80px; cursor:pointer; margin-top:0px;"  οnclick="window.setTimeout(function(){aspxGVAddNewRow(&#39;aspxGridUser&#39;);},0)">
                <span class="deleteicon"></span><span class="menuText">添加用户信息</span></div>

点击他也可以添加和上面的添加效果是一样的

3)验证:

有两种一种页面的还有后台的

后台的事件:OnRowValidating="aspxGridView_RowValidating" 

protected void aspxGridUnit_RowValidating(object sender, DevExpress.Web.Data.ASPxDataValidationEventArgs e)
        {
           
            if (e.NewValues["CompanyCode"] == null || e.NewValues["CompanyCode"].ToString().Trim().Length < 1)
            {
                AddError(e.Errors, aspxGridUnit.Columns["CompanyCode"], "企业编码不能为空");
            }

            if (string.IsNullOrEmpty(e.RowError) && e.Errors.Count > 0) e.RowError = "请正确填写.";

      }

 private void AddError(Dictionary<GridViewColumn, string> errors, GridViewColumn column, string errorText)
        {
            if (errors.ContainsKey(column)) return;
            errors[column] = errorText;
        }

前台的验证:

<dx:GridViewDataTextColumn Caption="登陆名称" VisibleIndex="3" FieldName="LoginName"  Width="5%"
                        >
                        <Settings AutoFilterCondition="Contains"></Settings>
                        <PropertiesTextEdit><ValidationSettings  ErrorDisplayMode="ImageWithTooltip" > <RequiredField   IsRequired="true" ErrorText="登陆名称不能为空"/></ValidationSettings></PropertiesTextEdit>
                    </dx:GridViewDataTextColumn>

:有的时候需要在新增或者辩解的事件中做验证

因为在事件中所有的弹出事件都不管用,所以可以这样做:这算是取巧的方法了

protected void aspxGridUser_RowInserting(object sender, DevExpress.Web.Data.ASPxDataInsertingEventArgs e)
        {

                   throw new Exception("已有相同登录名,请重新填写");
                    e.Cancel = true;
                    return;
            }










  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值