winform 里有很多textbox 我如何可以批量的赋值以及 保存

一个一个的赋值一个一个的保存很麻烦啊?而且DS一个一个对应的赋值繁琐。还是不行啊你们呢说的也没解决问题、这个问题我也想了很久还是一样的。没有简便方法,很多而且和数据库没有... 一个一个的赋值 一个一个的保存很麻烦啊?而且DS一个一个对应的赋值繁琐。
还是不行啊 你们呢说的也没解决问题、这个问题我也想了很久还是一样的。
没有简便方法 ,很多 而且和数据库没有直接的规律。只是数据路里有对应的字段。
或者就不能用textbox换成其他控件。
展开
 我来答
匿名用户
2012-01-11
展开全部
靠服务器端会占用太多资源了吧,建议用javascript吧
document.getElementsByTagName("TagName") 获取页面标签元素
value属性就是赋值...获得的是一个数组,要循环赋值

具体代码:
<script language="javascript" type="text/javascript">
var inPuts=document.getElementsByTagName("input"); //获取页面所有input标签元素,inPuts类型会自动设为数组
for(var i=0;i<inPuts.length;i++) //遍历inPuts数组
{
if(inPuts[i].type=="text") //判断类型是否为文本框
{
inPuts[i].value=" "; //为文本框赋值
}
}
</script>
获取的标签是input,不是textbox,因为经过服务器的解析编译后,textbox在浏览器中是会被解析编译为<input type="text" />的

放在</body>和</html>之间吧
spin2008
2012-01-09 · 超过32用户采纳过TA的回答
知道答主
回答量:78
采纳率:0%
帮助的人:69.7万
展开全部
D:\WindowsApplication6\WindowsApplication6\bin\Debug\XData.xml
<?xml version="1.0" encoding="utf-8" ?>
<TextBoxValues>
<txt Name="txt1">aaa</txt>
<txt Name="txt2">bbb</txt>
<txt Name="txt3">ccc</txt>
<txt Name="txt4">ddd</txt>
<txt Name="txt5">fff</txt>
<txt Name="txt6">eee</txt>
<txt Name="txt7">ggg</txt>
<txt Name="txt8">hhh</txt>
<txt Name="txt9">jjj</txt>
<txt Name="txt10">kkk</txt>
</TextBoxValues>

public partial class Form1 : Form
{
Dictionary<string, string> txtValue;
XmlDocument doc;
public Form1()
{
InitializeComponent();
txtValue = new Dictionary<string, string>();
doc = new XmlDocument();
}
private void Form1_Load(object sender, EventArgs e)
{
foreach (Control c in this.Controls)
{
if (c is TextBox)
{
txtValue.Add(c.Name, null);
}
}
doc.Load(Application.StartupPath + "\\XData.xml");
foreach (XmlNode v in doc.ChildNodes[1].ChildNodes)
{
txtValue[v.Attributes[0].Value] = v.InnerText;
}
}
//Textbox控件名称要与XML中的Name名称一致,
思路是这样的,根据控件名称生成Xml和数据字典,key控件名称,value控件值,
存取根据字典值
//加载值
private void button1_Click(object sender, EventArgs e)
{
foreach (Control c in this.Controls)
{
if (c is TextBox)
{
((TextBox)c).Text = txtValue[c.Name];
}
}

}
//保存到字典
你也可以根据字典值保存到XML就永久保存了
private void button2_Click(object sender, EventArgs e)
{
foreach (Control c in this.Controls)
{
if (c is TextBox)
{
txtValue[c.Name]=((TextBox)c).Text;

}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hong7204
2012-01-22 · TA获得超过9955个赞
知道大有可为答主
回答量:7787
采纳率:68%
帮助的人:3755万
展开全部
1、在工程中导入下面两个文件ADOConn.h和ADOConn.cpp(见后面)
2、在需要调用数据库的CPP文件开始包含头文件 #include "ADOConn.h"(数据库连接的代码已封装到ADOConn.cpp中的OnInitADOConn方法)
3、按照数据库连接-》数据库操作-》断开连接的步骤调用(以从数据库中获取数据为例)
ADOConn m_ADOConn1; // 定义ADOConn类对象
m_ADOConn1.OnInitADOConn(); //连接数据库
CString sql1;
sql1.Format("select top 20 职务,count(职务) as NameCount from tb_holidays group by 职务 order by 'NameCount' desc");
//设置查询语句
m_ADOConn1.m_pRecordset = m_ADOConn1.GetRecordSet((_bstr_t)sql1); //查询
while(!m_ADOConn1.m_pRecordset->adoEOF)
{
CString temp;
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lzh3452
2012-01-11 · TA获得超过1044个赞
知道小有建树答主
回答量:1168
采纳率:100%
帮助的人:845万
展开全部
如果你的TextBox名称是很有规律性或者能够知道要改的TextBox名的话,可以这样做:
for (int i = 1; i <= 30; i++)
{
Control myControl1 = FindControl("TextBox" + i.ToString());
myControl1.Text = "";
}
如果有什么问题,可以继续深入讨论。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
网上冲浪玩家
2012-01-10 · TA获得超过574个赞
知道小有建树答主
回答量:535
采纳率:100%
帮助的人:336万
展开全部
遍历所有的textbox相信上面各位仁兄说的都可以,但是对指定的textbox赋值各位没有讲明白,
其实很简单的,只要把需要保存和赋值的textbox设置成有规律的id,问题不就很简单了嘛,比如说按钮btn1操作的textbox有三个,那这三个textbox的id就可以写成txt_btn1_1,txt_btn1_2,txt_btn1_3,
这样在遍历的时候就可以根据id找出指定的textbox.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式