c#中dropdownlist取value值
答案:5 悬赏:10 手机版
解决时间 2021-04-02 15:04
- 提问者网友:謫仙
- 2021-04-01 17:31
c#中dropdownlist取value值
最佳答案
- 五星知识达人网友:笑迎怀羞
- 2021-04-01 18:16
我将value绑定到数据库的ID字段了,text绑定到了名称字段,但是在取ID的时候却只有1,就是不管你选什么都是1
我绑定的代码如下
private void AddUserDepNameBind()
{
BLL.Accounts_Department bll = new BLL.Accounts_Department();
DataSet ds = bll.GetAllList();
this.AddUserDepName.DataSource = ds.Tables[0];
this.AddUserDepName.DataTextField = "DepName";
this.AddUserDepName.DataValueField = "DepartmentID";
this.AddUserDepName.DataBind();
}
我取值的代码是这样的额
protected void SaveInfomation_Click(object sender, EventArgs e)
{
string strError = "";
if (this.AddUserName.Text.Trim().Length==0)
{
strError += "用户名不能为空!\\n";
}
if (this.AddUserPwd.Text.Trim().Length==0)
{
strError += "密码不能为空\\n";
}
if (this.AddTrueName.Text.Trim().Length==0)
{
strError += "真实姓名不能为空\\n";
}
if (!PageValidate.IsNumber(AddUserAge.Text))
{
strError += "年龄格式错误\\n";
}
if (!PageValidate.IsDateTime(AddUserbirthday.Text))
{
strError += "出生日期格式错误\\n";
}
if (this.AddUserPhone.Text.Trim().Length==0)
{
strError += "电话号码不能为空\\n";
}
if (this.AddUserEmail.Text.Trim().Length==0)
{
strError += "E-Mail不能为空\\n";
}
if (strError!="")
{
MessageBox.Show(this.Page,strError);
return;
}
string UserName = this.AddUserName.Text;
byte[] UserPassword = EncryptPassword(this.AddUserPwd.Text);
string TrueName = this.AddTrueName.Text;
string Sex = this.AddUserSex.SelectedValue.ToString();
int Age = int.Parse(this.AddUserAge.Text);
DateTime BirthDay = DateTime.Parse(this.AddUserbirthday.Text);
string Phone = this.AddUserPhone.Text;
string Email = this.AddUserEmail.Text;
int DepName =Convert.ToInt32( this.AddUserDepName.SelectedValue);
string UserType = this.AddUserType.SelectedValue.ToString();
Model.Accounts_Users model = new Model.Accounts_Users();
model.UserName = UserName;
model.UserPassWord = UserPassword;
model.TrueName = TrueName;
model.Sex = Sex;
model.Age = Age;
model.BirthDay = BirthDay;
model.Phone = Phone;
model.Email = Email;
model.DepartmentID = DepName;
model.UserType = UserType;
BLL.Accounts_Users bll = new BLL.Accounts_Users();
bll.Add(model);
Common.MessageBox.ShowAndRedirect(this.Page, "保存成功!", "User.aspx");
}
page_Load是这样的额
protected void Page_Load(object sender, EventArgs e)
{
AddUserDepNameBind();
AddUserTypeBind();
if (!IsPostBack)
{
//AddUserDepNameBind();
//AddUserTypeBind();
}
}
我绑定的代码如下
private void AddUserDepNameBind()
{
BLL.Accounts_Department bll = new BLL.Accounts_Department();
DataSet ds = bll.GetAllList();
this.AddUserDepName.DataSource = ds.Tables[0];
this.AddUserDepName.DataTextField = "DepName";
this.AddUserDepName.DataValueField = "DepartmentID";
this.AddUserDepName.DataBind();
}
我取值的代码是这样的额
protected void SaveInfomation_Click(object sender, EventArgs e)
{
string strError = "";
if (this.AddUserName.Text.Trim().Length==0)
{
strError += "用户名不能为空!\\n";
}
if (this.AddUserPwd.Text.Trim().Length==0)
{
strError += "密码不能为空\\n";
}
if (this.AddTrueName.Text.Trim().Length==0)
{
strError += "真实姓名不能为空\\n";
}
if (!PageValidate.IsNumber(AddUserAge.Text))
{
strError += "年龄格式错误\\n";
}
if (!PageValidate.IsDateTime(AddUserbirthday.Text))
{
strError += "出生日期格式错误\\n";
}
if (this.AddUserPhone.Text.Trim().Length==0)
{
strError += "电话号码不能为空\\n";
}
if (this.AddUserEmail.Text.Trim().Length==0)
{
strError += "E-Mail不能为空\\n";
}
if (strError!="")
{
MessageBox.Show(this.Page,strError);
return;
}
string UserName = this.AddUserName.Text;
byte[] UserPassword = EncryptPassword(this.AddUserPwd.Text);
string TrueName = this.AddTrueName.Text;
string Sex = this.AddUserSex.SelectedValue.ToString();
int Age = int.Parse(this.AddUserAge.Text);
DateTime BirthDay = DateTime.Parse(this.AddUserbirthday.Text);
string Phone = this.AddUserPhone.Text;
string Email = this.AddUserEmail.Text;
int DepName =Convert.ToInt32( this.AddUserDepName.SelectedValue);
string UserType = this.AddUserType.SelectedValue.ToString();
Model.Accounts_Users model = new Model.Accounts_Users();
model.UserName = UserName;
model.UserPassWord = UserPassword;
model.TrueName = TrueName;
model.Sex = Sex;
model.Age = Age;
model.BirthDay = BirthDay;
model.Phone = Phone;
model.Email = Email;
model.DepartmentID = DepName;
model.UserType = UserType;
BLL.Accounts_Users bll = new BLL.Accounts_Users();
bll.Add(model);
Common.MessageBox.ShowAndRedirect(this.Page, "保存成功!", "User.aspx");
}
page_Load是这样的额
protected void Page_Load(object sender, EventArgs e)
{
AddUserDepNameBind();
AddUserTypeBind();
if (!IsPostBack)
{
//AddUserDepNameBind();
//AddUserTypeBind();
}
}
全部回答
- 1楼网友:舍身薄凉客
- 2021-04-01 22:27
AddUserDepNameBind()方法放在if(!ispostback){ }里面追问不好意思啊 我这个是原来的 ,我放到if(!IsPostBack)里面了还是报错,说是输入的字符串格式不正确追答输入字符串格式不正确 就是里在往数据库里加数据的时候的问题了 注意字段类型 加个断点调试一下 看具体错在哪里追问我加断点调试了,看到的我取的值是0,但是不知道怎么看是取的那个字段的值,我这个字段的类型没有问题,我都检查过了,有人说我是取的DepName而不是ID,但是我不知道怎么还有更好的方法查看我到底取的是什么,还请指点追答那么在输入数据的时候,有无问题呢 比如说 输入年龄的时候,输入数据错误,一般都是数据格式不正确造成的追问输入的时候也没有问题,就是在提交的时候会报错追答能不能把你逐语句调试的时候 出现的错误的地方给我看一下 好吗追问int DepName =Convert.ToInt32( this.AddUserDepName.SelectedItem.Value);
- 2楼网友:由着我着迷
- 2021-04-01 21:49
是保存的时候报错么? ... 还是加断点调试吧 。一步一步跟下来。 看到哪行代码报错。如果是bll.Add(model) 方法报错的话就近方法里看看具体哪行。追问三层都没有问题,就是取值出问题,也就是说我数据库没有0这个数据,存进去的时候是有外键约束的,所以会造成冲突追答1、确定AddUserDepName 绑定是正确的?
2、确定
if (!IsPostBack)
{
AddUserDepNameBind();
AddUserTypeBind();
}
确定AddUserDepNameBInd()是在 !IsPostBack 内
3、确定你已经重新编译通过了.
4、还是不行你可以 AddUserDepName.Item.SelectValue 这么试试。追问“System.Web.UI.WebControls.ListItemCollection”不包含“selectvalue”的定义,并且找不到可接受类型为“System.Web.UI.WebControls.ListItemCollection”的第一个参数的扩展方法“selectvalue”(是否缺少 using 指令或程序集引用?)追答drop.SelectedItem.Value追问我是这样写的你看看对么
int DepName=Convert.ToInt32(this.AddUserDepName.SelectedItem.Value);
我这样写报错说是未将对象引用设置到对象的实例
2、确定
if (!IsPostBack)
{
AddUserDepNameBind();
AddUserTypeBind();
}
确定AddUserDepNameBInd()是在 !IsPostBack 内
3、确定你已经重新编译通过了.
4、还是不行你可以 AddUserDepName.Item.SelectValue 这么试试。追问“System.Web.UI.WebControls.ListItemCollection”不包含“selectvalue”的定义,并且找不到可接受类型为“System.Web.UI.WebControls.ListItemCollection”的第一个参数的扩展方法“selectvalue”(是否缺少 using 指令或程序集引用?)追答drop.SelectedItem.Value追问我是这样写的你看看对么
int DepName=Convert.ToInt32(this.AddUserDepName.SelectedItem.Value);
我这样写报错说是未将对象引用设置到对象的实例
- 3楼网友:愁杀梦里人
- 2021-04-01 20:09
string Sex = this.AddUserSex.SelectedValue.ToString();
你的 sex 取值正确吗?
给Page 头 加上 EnableViewState="true" 试试追问正确的啊追答给Page 头 加上 EnableViewState="true" 试试追问问题依旧
你的 sex 取值正确吗?
给Page 头 加上 EnableViewState="true" 试试追问正确的啊追答给Page 头 加上 EnableViewState="true" 试试追问问题依旧
- 4楼网友:走死在岁月里
- 2021-04-01 19:19
我暂时保留我的看法!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯