Открытие xml в combobox - C#
Формулировка задачи:
Добрый день , мучаюсь с этим уже неделю , прошу помочь
В combobox из xml загружается <Combobox man="4"> и <Combobox man="2"> загружается именно "4" и "2" , при выборе 4 я должен занести в datagridview при выборе 2 помогите пожалуйста решить проблему
int b = 0;
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
dataGridView2.Rows.Clear();
int index22 = -1;
XmlTextReader xmlIn = new XmlTextReader(openFileDialog1.OpenFile());
while (xmlIn.Read())
{
if (xmlIn.NodeType == XmlNodeType.EndElement) { continue; }
if (xmlIn.Name == "Combobox")
{
if (comboBox1.Text == xmlIn.GetAttribute("man") == true)
{
b = 1;
}
}
if (xmlIn.Name == "Row" && b == 1)
{
dataGridView2.Rows.Add();
index22++;
}
if (xmlIn.Name == "Proggram" && b == 1)
{
dataGridView2.Rows[index22].Cells[0].Value = xmlIn.GetAttribute("Value");
}
if (xmlIn.Name == "duration" && b == 1)
{
dataGridView2.Rows[index22].Cells[1].Value = xmlIn.GetAttribute("Value");
}
if (xmlIn.Name == "seqprog" && b == 1)
{
dataGridView2.Rows[index22].Cells[2].Value = xmlIn.GetAttribute("Value");
}
if (xmlIn.Name == "Pauseprog" && b == 1)
{
dataGridView2.Rows[index22].Cells[3].Value = xmlIn.GetAttribute("Value");
}
}
}<?xml version="1.0" encoding="utf-16"?>
<!--Файл хранит текст сетки-->
<GridText>
<Combobox man="4">
<Row>
<Proggram Value="1" />
<duration Value="30" />
<seqprog Value="0" />
<Pauseprog Value="0" />
</Row>
</Combobox>
<Combobox man="2">
<Row>
<Proggram Value="2" />
<duration Value="30" />
<seqprog Value="0" />
<Pauseprog Value="0" />
</Row>
</Combobox>
</GridText>
<Proggram Value="1" />
<duration Value="30" />
<seqprog Value="0" />
<Pauseprog Value="0" />
<Proggram Value="2" />
<duration Value="30" />
<seqprog Value="0" />
<Pauseprog Value="0" />
Решение задачи: «Открытие xml в combobox»
textual
Листинг программы
dataGridView2.Rows.Clear();
index22 = -1;
int b = 0;
XmlTextReader xmlIn = new XmlTextReader(openFileDialog1.OpenFile());
while (xmlIn.Read())
{
if (xmlIn.NodeType == XmlNodeType.EndElement) { continue; }
if (xmlIn.Name == "Combobox")
{
if (xmlIn.GetAttribute("man") == comboBox1.Text == true)
{
b = 1;
//MessageBox.Show("1");
}
else
{
b = 2;
}
}
if (xmlIn.Name == "Row" && b == 1)
{
dataGridView2.Rows.Add();
index22++;
}
if (xmlIn.Name == "Proggram" && b == 1)
{
dataGridView2.Rows[index22].Cells[0].Value = xmlIn.GetAttribute("Value");
}
if (xmlIn.Name == "duration" && b == 1)
{
dataGridView2.Rows[index22].Cells[1].Value = xmlIn.GetAttribute("Value");
}
if (xmlIn.Name == "seqprog" && b == 1)
{
dataGridView2.Rows[index22].Cells[2].Value = xmlIn.GetAttribute("Value");
}
if (xmlIn.Name == "Pauseprog" && b == 1)
{
dataGridView2.Rows[index22].Cells[3].Value = xmlIn.GetAttribute("Value");
}
}
xmlIn.Close();
}