从Datagrid转换为xml [英] converting from Datagrid to xml

查看:48
本文介绍了从Datagrid转换为xml的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



来自Datagrid,当我选择行时应该在系统中生成xml



问候

Balamurugan

Hi,
From Datagrid when i''m selecting row should should generate as xml in system

Regards
Balamurugan

推荐答案

编码:





使用系统;

使用System.Collections.Generic;

使用System.Linq;

使用System.Text;

使用System.Windows;

使用System.Windows.Controls;

使用System.Windows.Data;

使用System.Windows.Documents;

使用System.Windows.Input;

使用System.Windows.Media;

使用System.Windows.Media.Imaging;

使用System.Windows.Navigation;

使用System.Windows.Shapes;

使用System.Data;

使用System .Data.SqlClient;

名称空间样本

{

///< summary>

/// Window1.xaml的交互逻辑

///

公共部分类Window1 :Window

{

SqlConnection con = new SqlConnection(server = .; database = test; trusted_connection = true;);

public Window1()

{

InitializeComponent();

}



private void Window_Loaded(object sender,RoutedEventArgs e)

{

con.Open();

comboBox1.Items.Add(All) ;

comboBox2.Items.Add(All);

comboBox3.Items.Add(All);

comboBox4.Items .Add(All);

comboBox1.SelectedIndex = 0;

comboBox2.SelectedIndex = 0;

comboBox3.SelectedIndex = 0;

comboBox4.SelectedIndex = 0;

SqlCommand cmd = new SqlCommand(select test gn from test,con);

SqlDataReader rd = cmd.ExecuteReader();

w hile(rd.Read())

{

comboBox1.Items.Add(rd [0] .ToString());

}

rd.Close();

cmd = new SqlCommand(select test cn from test,con);

rd = cmd。 ExecuteReader();

while(rd.Read())

{

comboBox2.Items.Add(rd [0] .ToString( ));

}



rd.Close();

cmd = new SqlCommand(select distinct at at test,con);

rd = cmd.ExecuteReader();

while(rd.Read())

{

comboBox3.Items.Add(rd [0] .ToString());

}

rd.Close();

cmd = new SqlCommand(select test ft from test,con);

rd = cmd.ExecuteReader();

while(rd.Read( ))<无线电通信/>
{

comboBox4.Items.Add(rd [0] .ToString());

}

rd。关闭();

con.Close();

}



private void button2_Click(对象发送者, RoutedEventArgs e)

{

int i = 0;

string com =select * from test;

if(comboBox1.Text!=All|| comboBox2.Text!=全部|| comboBox3.Text!=全部|| comboBox4.Text!=全部)

{

com + =where;

}

if(comboBox1.Text!=All)

{

if(i< 1)

{

com + =gn =''+ comboBox1.Text +'';

i ++;

}

else

{

com + =和gn =''+ comboBox1.Text +'';

i ++;

}

}

if(comboBox2.Text!=全部)

{

if(i< 1)

{

com + =cn =''+ comboBox2.Text +'';

i ++;

}

else

{
com + =和cn =''+ comboBox2.Text +'';

i ++;

}

}

if(comboBox3.Text!=All)

{

if(i< 1)

{

com + =at =''+ comboBox3.Text +'';

i ++;

}

其他

{

com + =和at =''+ comboBox3.Text +' ';

i ++;

}

}

if(comboBox4.Text!=全部)

{

if(i< 1)

{

com + =ft ='' + comboBox4.Text +'';

i ++;

}

else

{

com + =和ft =''+ comboBox4.Text +'';

i ++;

}

}

DataTable datatable = new DataTable();
datatable.Columns.Add(Select,typeof(bool));

datatable.Columns.Add(Group Name,typeof(string));

datatable.Columns.Add(Client Name,typeof(string));

datatable.Columns.Add(Assesment Type,typeof(string));

datatable.Columns.Add(Form Type,typeof(string));



con.Open();

SqlCommand cmd = new SqlCommand(com,con);

SqlDataReader rd = cmd.ExecuteReader();

while(rd.Read())

{

DataRow tr = datatable.NewRow();

tr [Select] = false;

tr [ Group Name] = rd [0] .ToString();

tr [Client Name] = rd [1] .ToString();

tr [ 评估类型] = rd [2] .ToString();

tr [表单类型] = rd [3] .ToString();

dat atable.Rows.Add(tr);

}

rd.Close();

con.Close();

dataGrid1.DataContext = datatable;

}



private void button1_Click(object sender,RoutedEventArgs e)

{

String str =+ Environment.NewLine +< node> + Environment.NewLine;

for(int i = 0; i< dataGrid1.Items.Count; i ++)

{

系统。 Data.DataRowView dv =(DataRowView)dataGrid1.Items [i];

DataRow dr = dv.Row;

if(dr.ItemArray [0] .ToString() ==真)

{

str + =< record> + Environment.NewLine;

str + =< + dataGrid1.Columns [1] .Header.ToString()。替换(,_)+> + Environment.NewLine + dr.ItemArray [1] .ToString()+ Environment.NewLine ++ Environment.NewLine;

str + =<+ dataGrid1.Columns [2] .Header .ToString()。Replace(,_)+>+ Environment.NewLine + dr.ItemArray [2] .ToString()+ Environment.NewLine ++ Environment.NewLine;

str + =< + dataGrid1.Columns [3] .Header.ToString()。替换(,_)+> + Environment.NewLine + dr.ItemArray [3] .ToString()+ Environment.NewLine ++ Environment.NewLine;

str + =<+ dataGrid1.Columns [4] .Header .ToString()。Replace(,_)+>+ Environment.NewLine + dr.ItemArray [4] .ToString()+ Environment.NewLine ++ Environment.NewLine;

str + =+ Environment.NewLine;

}

}

str + =;

System.IO.File.WriteAllText(G:\\text.xml,str);

MessageBox.Show(文件生成成功);

}

}

}
Coding :


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Data;
using System.Data.SqlClient;
namespace sample
{
/// <summary>
/// Interaction logic for Window1.xaml
///
public partial class Window1 : Window
{
SqlConnection con = new SqlConnection("server=.;database=test;trusted_connection=true;");
public Window1()
{
InitializeComponent();
}

private void Window_Loaded(object sender, RoutedEventArgs e)
{
con.Open();
comboBox1.Items.Add("All");
comboBox2.Items.Add("All");
comboBox3.Items.Add("All");
comboBox4.Items.Add("All");
comboBox1.SelectedIndex = 0;
comboBox2.SelectedIndex = 0;
comboBox3.SelectedIndex = 0;
comboBox4.SelectedIndex = 0;
SqlCommand cmd = new SqlCommand("select distinct gn from test", con);
SqlDataReader rd = cmd.ExecuteReader();
while (rd.Read())
{
comboBox1.Items.Add(rd[0].ToString());
}
rd.Close();
cmd = new SqlCommand("select distinct cn from test", con);
rd = cmd.ExecuteReader();
while (rd.Read())
{
comboBox2.Items.Add(rd[0].ToString());
}

rd.Close();
cmd = new SqlCommand("select distinct at from test", con);
rd = cmd.ExecuteReader();
while (rd.Read())
{
comboBox3.Items.Add(rd[0].ToString());
}
rd.Close();
cmd = new SqlCommand("select distinct ft from test", con);
rd = cmd.ExecuteReader();
while (rd.Read())
{
comboBox4.Items.Add(rd[0].ToString());
}
rd.Close();
con.Close();
}

private void button2_Click(object sender, RoutedEventArgs e)
{
int i = 0;
string com = "select * from test";
if (comboBox1.Text != "All" || comboBox2.Text != "All" || comboBox3.Text != "All" || comboBox4.Text != "All")
{
com += " where ";
}
if (comboBox1.Text != "All")
{
if (i < 1)
{
com += "gn=''" + comboBox1.Text + "'' ";
i++;
}
else
{
com += "and gn=''" + comboBox1.Text + "'' ";
i++;
}
}
if (comboBox2.Text != "All")
{
if (i < 1)
{
com += "cn=''" + comboBox2.Text + "'' ";
i++;
}
else
{
com += "and cn=''" + comboBox2.Text + "'' ";
i++;
}
}
if (comboBox3.Text != "All")
{
if (i < 1)
{
com += "at=''" + comboBox3.Text + "'' ";
i++;
}
else
{
com += "and at=''" + comboBox3.Text + "'' ";
i++;
}
}
if (comboBox4.Text != "All")
{
if (i < 1)
{
com += "ft=''" + comboBox4.Text + "'' ";
i++;
}
else
{
com += "and ft=''" + comboBox4.Text + "'' ";
i++;
}
}
DataTable datatable = new DataTable();
datatable.Columns.Add("Select", typeof(bool));
datatable.Columns.Add("Group Name", typeof(string));
datatable.Columns.Add("Client Name", typeof(string));
datatable.Columns.Add("Assesment Type", typeof(string));
datatable.Columns.Add("Form Type", typeof(string));

con.Open();
SqlCommand cmd = new SqlCommand(com,con);
SqlDataReader rd = cmd.ExecuteReader();
while (rd.Read())
{
DataRow tr = datatable.NewRow();
tr["Select"] = false;
tr["Group Name"] = rd[0].ToString();
tr["Client Name"] = rd[1].ToString();
tr["Assesment Type"] = rd[2].ToString();
tr["Form Type"] = rd[3].ToString();
datatable.Rows.Add(tr);
}
rd.Close();
con.Close();
dataGrid1.DataContext = datatable;
}

private void button1_Click(object sender, RoutedEventArgs e)
{
String str = "" + Environment.NewLine + "<node>" + Environment.NewLine;
for (int i = 0; i < dataGrid1.Items.Count; i++)
{
System.Data.DataRowView dv = (DataRowView)dataGrid1.Items[i];
DataRow dr = dv.Row;
if(dr.ItemArray[0].ToString()=="True")
{
str += "<record>" + Environment.NewLine;
str += "<" + dataGrid1.Columns[1].Header.ToString().Replace(" ", "_") + ">" + Environment.NewLine + dr.ItemArray[1].ToString() + Environment.NewLine + " + Environment.NewLine;
str += "<" + dataGrid1.Columns[2].Header.ToString().Replace(" ", "_") + ">" + Environment.NewLine + dr.ItemArray[2].ToString() + Environment.NewLine + " + Environment.NewLine;
str += "<" + dataGrid1.Columns[3].Header.ToString().Replace(" ", "_") + ">" + Environment.NewLine + dr.ItemArray[3].ToString() + Environment.NewLine + " + Environment.NewLine;
str += "<" + dataGrid1.Columns[4].Header.ToString().Replace(" ", "_") + ">" + Environment.NewLine + dr.ItemArray[4].ToString() + Environment.NewLine + " + Environment.NewLine;
str += "" + Environment.NewLine;
}
}
str += "";
System.IO.File.WriteAllText("G:\\text.xml", str);
MessageBox.Show("File Generated Successfully");
}
}
}


这篇关于从Datagrid转换为xml的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆