Private void button3_Click(object sender, EventArgs e)




{

bindingSource1.DataSource = DataXML.Tables[0];

this.bindingNavigator1.BindingSource = bindingSource1;

dataGridView1.DataSource = bindingSource1;

dataGridView1.EditMode = DataGridViewEditMode.EditOnEnter;

}

}

}

Разработка приложения КАТАЛОГ ТОВАРОВ. Рассмотрим пример разработки приложения, отображающего информацию о каталоге товаров. Хранилищем данных о товарах является файл с именем catalogue.xml, содержимое которого представлено в листинге 8.9.
В файле хранятся данные о коде товара, наименовании, цене, фотография товара и его краткое описание. Приложение позволяет просматривать каталог товаров, включая их изображения.

Листинг 8.9. Файл catalogue.xml

 

<?xml version="1.0" encoding="utf-8"?>

<catalogue>

<unit>

<uCode>003782</uCode>

<uTitle>Чайник</uTitle>

<uMemo>Чайник из нержавеющей стали. Объем: 1,5 л.</uMemo>

<uPrice>670,50</uPrice>

<uImage>i001.jpg</uImage>

</unit>

<unit>

<uCode>012345</uCode>

<uTitle>Чашка с блюдцем</uTitle>

<uMemo>Чашка с блюдцем. Керамика. Цвет: синий,

зеленый, красный.</uMemo>

<uPrice>99,00</uPrice>

<uImage>i002.jpg</uImage>

</unit>

<unit>

<uCode>01524</uCode>

<uTitle>Комплект столовой мебели</uTitle>

<uMemo>Комплект столовой мебели. Стол + 4 стула.

Материал: массив клена.</uMemo>

<uPrice>3900,00</uPrice>

<uImage>i003.jpg</uImage>

</unit>

<unit>

<uCode>01555</uCode>

<uTitle>Лампа настольная</uTitle>

<uMemo>Лампа настольная. 40 Вт. Материал:

керамика.</uMemo>

<uPrice>549,50</uPrice>

<uImage>i006.jpg</uImage>

</unit>

<unit>

<uCode>01325</uCode>

<uTitle>Миска</uTitle>

<uMemo>Миска керамическая. Цвет: коричневый+

бежевый, голубой+белый.</uMemo>

<uPrice>49,50</uPrice>

<uImage>i012.jpg</uImage>

</unit>

<unit>

<uCode>01197</uCode>

<uTitle>Люстра</uTitle>

<uMemo>Люстра. 40 Вт. Хромированное

покрытие.</uMemo>

<uPrice>1549,50</uPrice>

<uImage>i011.jpg</uImage>

</unit>

</catalogue>

 

Для проектирования интерфейса приложения на форме следует разместить элементы управления, как показано на рис. 8.9.

dataGridView1
textBox2
textBox2
textBox4  
textBox3
textBox5  
textBox1  
pictureBox1

Рис. 8.9. Размещение элементов управления на форме

при проектировании приложения Каталог товаров

Код приложения представлен в листинге 8.10.

Листинг 8.10. Код приложения Каталог товаров

 

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

using System.IO;

using System.Xml;

Namespace WindowsApplication1

{

Public partial class Form1: Form

{

string file_name = "catalogue.xml";

XmlTextReader xml_read;

// Переменная для хранения имени файла

// Объект DataXML класса DataSet представляет собой расположенный

// в памяти кэш данных, загружаемых из источника данных

DataSet DataXML;

DataTable MyDatatable = null;

Public Form1()

{

InitializeComponent();

}

private void Form1_Load(object sender, EventArgs e)

{

DataXML = new DataSet();

FileStream fs = new FileStream(file_name, FileMode.Open);

xml_read = new XmlTextReader(fs);

DataXML.ReadXml(xml_read, XmlReadMode.InferSchema);

MyDatatable = DataXML.Tables[0];

bindingSource1.DataMember = DataXML.Tables[0].ToString();

bindingSource1.DataSource = DataXML.Tables[0];

this.bindingNavigator1.BindingSource = bindingSource1;

dataGridView1.DataSource = bindingSource1;

dataGridView1.EditMode = DataGridViewEditMode.EditOnEnter;

dataGridView1.Columns[0].Width = 40;

dataGridView1.Columns[0].HeaderText = "Код";

dataGridView1.Columns[1].Width = 100;

dataGridView1.Columns[1].HeaderText = "Наименование";

dataGridView1.Columns[2].Width =250;

dataGridView1.Columns[2].HeaderText = "Описание";

dataGridView1.Columns[3].Width = 55;

dataGridView1.Columns[3].HeaderText = "Цена";

fs.Close();

}

 

// Щелчок в ячейке dataGridView1

Private void dataGridView1_CellContentClick(object sender, DataGrid

ViewCellEventArgs e)

{

textBox2.Text =

DataXML.Tables[0].Rows[e.RowIndex][2].ToString();

TextBox1.Text

RowIndex][1].ToString();

textBox3.Text =

DataXML.Tables[0].Rows[e.RowIndex][3].ToString();

textBox4.Text =

DataXML.Tables[0].Rows[e.RowIndex][0].ToString();

textBox5.Text =

DataXML.Tables[0].Rows[e.RowIndex][4].ToString();

pictureBox1.Image = new Bitmap(textBox5.Text); }

 

// Щелчок в левом поле строки dataGridView1



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2022-09-06 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: