页面代码
<table>
<tr >
<TD height="28" colspan="2" valign="top" class="dataTitle">修改省份信息</TD>
</tr>
                                       
<caption>
<tr>
<TD height="22" valign="top" nowrap class="datatr1">
  <dxe:ASPxLabel ID="ASPxLabel3" runat="server" Text="区域名称">
</dxe:ASPxLabel><font color="#FF0000">*</font>:</TD> <TD valign="top"  > 
<dxe:ASPxComboBox ID="area_name" runat="server" 
TextField="area_name"
ValueField = "area_id" 
Text ='<%# Eval("area_name") %>'
ValueType="System.String"  AutoPostBack="false">
</dxe:ASPxComboBox>

                                                  
                                                                   
                                                      
                                                          
 </tr>
<tr>
<td> <dxe:ASPxLabel ID="ASPxLabel2" runat="server" Text="省份名称">
</dxe:ASPxLabel></td>
<td><dxe:ASPxTextBox ID="province_name" runat="server" Width="170px" Value='<%# Eval("province_name") %>'>
</dxe:ASPxTextBox></td>
                                                             
<asp:HiddenField  ID="kid" runat="server"  Value='<%# Eval("kid") %>'/>
 <asp:HiddenField  ID="old_provinceName" runat="server"  Value='<%# Eval("province_name") %>'/>
 <asp:HiddenField ID="old_provinceId" runat="server"  Value='<%# Eval("province_id") %>'/>
<asp:HiddenField ID="province_id" runat="server"  Value='<%# Eval("province_id") %>'/>
</tr>
                                                        
<tr>
<td>
<asp:Button ID="Button1" runat="server" Text="保存" OnClick="Button1_Click" />
 </td>
<td>
<asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text="取消" />
</td>
</tr>
</caption>
</table>cs代码
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using DevExpress.Web.ASPxGridView;
using System.Data.SqlClient;
using cn.xzcj.utility.database;public partial class sys_province_modifyProvince : System.Web.UI.UserControl
{
    protected void Page_Load(object sender, EventArgs e)
    {
        //if (!Page.IsPostBack)
        //{          
        //}
        bindTitle();
          }
    //protected void Page_PreInit(object sender, EventArgs e)
    //{
    //    bindTitle();
    //}       protected void Button2_Click(object sender, EventArgs e)
    {
        GridViewEditFormTemplateContainer container = this.NamingContainer as GridViewEditFormTemplateContainer;
        ASPxGridView tmpleteGrid = container.Grid;
        tmpleteGrid.CancelEdit();
    }
    private void saveEdit()
    {
        string old_province_name = old_provinceName.Value.ToString();        int old_province_id = Convert.ToInt32(old_provinceId.Value.ToString());
        string provinceName = province_name.Text.ToString();
        Response.Write("--------11-----"+area_name.Text.ToString());
        Response.Write("--------222-----" + area_name.TextField.ToString());        String strSql = "update province set province_name=@province_name ,kid = @kid ,area_id =@area_id,area_name =@area_name  where province_id=@province_id ";        string sql_city = "update city set province_name ='" + provinceName + "' ,province_id =" + old_province_id + " where province_name ='" + old_province_name + "'";
       
        String[] value = { province_name.Text, kid.Value,area_name.Value.ToString(),area_name.Text.ToString(), province_id.Value };        DoDataBase1 ddb = new DoDataBase1();
        SqlParameter[] param = ddb.getSqlToParameter(strSql, value);        ddb.execNoResultSql(strSql, param);
   
        ddb.ExecuteSQL(sql_city);
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        GridViewEditFormTemplateContainer container = this.NamingContainer as GridViewEditFormTemplateContainer;
        ASPxGridView tmpleteGrid = container.Grid;        saveEdit();
      
        // tmpleteGrid.DataBind();
        tmpleteGrid.DataBind();
        tmpleteGrid.CancelEdit();
    }    private void bindTitle()
    {//对一个下拉列表的数据绑定, textfield和valuefield属性        DoDataBase1 db = new DoDataBase1();
        DataSet ds = new DataSet();
        string sql = "select area_id,area_name from area";
        ds = db.GetDataSet(sql);
        this.area_name.DataSource = ds;
        this.area_name.TextField = "area_name";
        this.area_name.ValueField = "area_id";
        this.area_name.DataBindItems();
            }}

解决方案 »

  1.   

    问题补充!!!
    String[] value = { province_name.Text, kid.Value,area_name.Value.ToString(),area_name.Text.ToString(), province_id.Value };
    想问的问题是,为什么这里的area_name.Value.ToString(),area_name.Text.ToString()都是同一个值呢?
      

  2.   

    为什么这里的area_name.Value.ToString(),area_name.Text.ToString() 都是同一个值呢?
    ————————————————————
    ASPxTextBox这控件的Value属性和Text属性可能是引用了同一个字段,所以同一个值很正常
      

  3.   

    ASPxTextBox这控件的Value属性和Text属性可能是引用了同一个字段,所以同一个值很正常
    -------------------------------------
    哥们看好了,不是一个字段。
     this.area_name.TextField = "area_name";
     this.area_name.ValueField = "area_id";之前写的联动也是这么实现的,text值和value的值可以是不一样的啊!!!!
    没分就不回答了。真成。冲我分来滴,还是提高问题,帮助人。
     强烈BS你
    jiezigege
     
    (程序帮主)