XML格式:
<parameter Name="材料类别" FieldName="material_class" Width="100" if_display="1" Sort="1" Desc="在用" />
<parameter Name="材料名称" FieldName="material_name" Width="80" if_display="1" Sort="2" Desc="在用" />前台:有个gridview 绑定XML里面的数据。
<asp:TemplateField HeaderText="字段代号" SortExpression="field_code">
<ItemTemplate>
<asp:Label runat="server" ID="lab_code" Text='<%#DataBinder.Eval(Container, "DataItem.FieldName")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>后台:
for (int i = 0; i < gvQuery_Filed.Rows.Count; i++)
{
Label lab_field_code = gvQuery_Filed.Rows[i].FindControl("lab_code") as Label;//得到当前行的code
TextBox txt_field_name = gvQuery_Filed.Rows[i].FindControl("txtGField_Name") as TextBox;
CheckBox chk_if_display = gvQuery_Filed.Rows[i].FindControl("chkGIf_Display") as CheckBox;
TextBox txt_format = gvQuery_Filed.Rows[i].FindControl("txtWidth") as TextBox;
string str_field_code = lab_field_code.Text;
string str_field_name = txt_field_name.Text;
bool bl_if_dispaly = chk_if_display.Checked;
string str_format = txt_format.Text;
foreach (XmlNode xd in xWitsTablesList)
{
foreach (XmlNode xd2 in xd.ChildNodes)
{
XmlElement xe = (XmlElement)xd2;//对XD进行类型转化
if (IsXMLUtility.XmlHelper.GetAttributeInnerText(xd2.Attributes["FieldName"]) == str_field_code)
{
xe.SetAttribute("Name", str_field_name);//更新Name字段的值
if (bl_if_dispaly)
{
xe.SetAttribute("if_display", "1");
}
xe.SetAttribute("Width", str_format);
break;
}
}
}
}思路是这样的:通过遍历gridview的行,获取当前行的code,然后查找xml里面的 FieldName字段等于code的一行,然后更新相对应的Width,if_display,Name属性的值。
我确定程序流程都走一遍,逻辑没问题,可是XML值就是不更新。
<parameter Name="材料类别" FieldName="material_class" Width="100" if_display="1" Sort="1" Desc="在用" />
<parameter Name="材料名称" FieldName="material_name" Width="80" if_display="1" Sort="2" Desc="在用" />前台:有个gridview 绑定XML里面的数据。
<asp:TemplateField HeaderText="字段代号" SortExpression="field_code">
<ItemTemplate>
<asp:Label runat="server" ID="lab_code" Text='<%#DataBinder.Eval(Container, "DataItem.FieldName")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>后台:
for (int i = 0; i < gvQuery_Filed.Rows.Count; i++)
{
Label lab_field_code = gvQuery_Filed.Rows[i].FindControl("lab_code") as Label;//得到当前行的code
TextBox txt_field_name = gvQuery_Filed.Rows[i].FindControl("txtGField_Name") as TextBox;
CheckBox chk_if_display = gvQuery_Filed.Rows[i].FindControl("chkGIf_Display") as CheckBox;
TextBox txt_format = gvQuery_Filed.Rows[i].FindControl("txtWidth") as TextBox;
string str_field_code = lab_field_code.Text;
string str_field_name = txt_field_name.Text;
bool bl_if_dispaly = chk_if_display.Checked;
string str_format = txt_format.Text;
foreach (XmlNode xd in xWitsTablesList)
{
foreach (XmlNode xd2 in xd.ChildNodes)
{
XmlElement xe = (XmlElement)xd2;//对XD进行类型转化
if (IsXMLUtility.XmlHelper.GetAttributeInnerText(xd2.Attributes["FieldName"]) == str_field_code)
{
xe.SetAttribute("Name", str_field_name);//更新Name字段的值
if (bl_if_dispaly)
{
xe.SetAttribute("if_display", "1");
}
xe.SetAttribute("Width", str_format);
break;
}
}
}
}思路是这样的:通过遍历gridview的行,获取当前行的code,然后查找xml里面的 FieldName字段等于code的一行,然后更新相对应的Width,if_display,Name属性的值。
我确定程序流程都走一遍,逻辑没问题,可是XML值就是不更新。
解决方案 »
- 开发的asp.net网站产品,用于企业内部使用,如何确保不被对方传播到其它企业内部使用?
- VS2008怎么设置控件的位置?
- 新年的第一个贴子,来者有分,VS2005的一个困惑,怎样把.sln生成在项目文件夹里(即工程源代码同一个文件夹里)
- 怎么还原编译成dll文件的网站
- ××××××求解如何解析特定xml字符串的解决方案××××××
- 如何在C#代码中,点击按钮进入另一页面?
- 关于session的使用问题
- 急求水印和缩略图控件
- DataList中button的功能如何实现
- 请问我在WINDOWS2000里只装了。NET FRAMEWORK SDK之外,就可以去ASP。NET的测试吗?》
- 100分求对称加密算法,可追加,asp.net与asp都能共用互解,裸结贴(择优)
- 关于OLEDB读取Excel表的问题
if (bl_if_dispaly)
{
xe.SetAttribute("if_display", "1");
}
xe.SetAttribute("Width", str_format);
break; 加上:XmlDocument.Save(path);
string fileName = (AppGlobal.AppControl.GetPhysicalApplicationPath() + "Xml\\GV_Xml\\" + "耗材销毁" + ".xml").Replace("WebSite", "WebService");//得到XML路径
xmlDoc.Load(fileName);我的是这样的 你的参数path是我的fileName吗?
对我的帮助