. Черный ящик - это usercontrol.Показать номер usercontrol на основе количества записей в базе данных
UserControl Код
string b = "";
public string ID
{
set { b = value; }
}
public void sample()
{
textBox1.Clear();
using (SqlConnection myDatabaseConnection = new SqlConnection(myConnectionString.ConnectionString))
{
myDatabaseConnection.Open();
using (SqlCommand SqlCommand = new SqlCommand("Select LastName, Image from Employee where ID = @a", myDatabaseConnection))
{
SqlCommand.Parameters.AddWithValue("@a", b);
DataSet DS = new DataSet();
SqlDataAdapter da = new SqlDataAdapter(SqlCommand);
da.Fill(DS, "Images");
var imagesTable = DS.Tables["Images"];
var imagesRows = imagesTable.Rows;
var count = imagesRows.Count;
if (count <= 0)
return;
var imageColumnValue =
imagesRows[count - 1]["Image"];
if (imageColumnValue == DBNull.Value)
return;
var data = (Byte[])imageColumnValue;
using (var stream = new MemoryStream(data))
{
pictureBox1.Image = Image.FromStream(stream);
}
}
}
}
public void getname()
{
using (SqlConnection myDatabaseConnection = new SqlConnection(myConnectionString.ConnectionString))
{
myDatabaseConnection.Open();
using (SqlCommand SqlCommand = new SqlCommand("Select LastName from Employee where ID = @a", myDatabaseConnection))
using (SqlDataAdapter da = new SqlDataAdapter(SqlCommand))
{
SqlCommand.Parameters.AddWithValue("@a", b);
SqlDataReader DR1 = SqlCommand.ExecuteReader();
if (DR1.Read())
{
textBox1.Text = DR1.GetString(DR1.GetOrdinal("LastName")).ToString();
}
}
}
}
Форма Код
public string ID
{
get { return textBox1.Text; }
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
userControl21.ID = ID;
userControl21.sample();
userControl21.getname();
}
Используя код выше, я могу показать одну запись в UserControl. Как я могу отобразить несколько usercontrol на основе количества записей в базе данных с их изображением и именем? Например, у меня есть 7 записей в базе данных, в форме будет отображаться 7 пользовательских контролей. И когда я нажимаю или выбираю usercontrol, в моей форме будет отображаться дополнительная информация, такая как Адрес, Контакты, Etc. Если записей в базе данных слишком много, чтобы вписаться в форму, будет вертикальная или горизонтальная полоса прокрутки. Дайте мне код :)
Что представляет собой лучший контейнер для отображения пользовательских контуров, которые могут иметь полосу прокрутки? панель, групповой ящик или что-нибудь еще?
Это должен быть выход образца. .
[Добавить/удалить их динамически] (http://stackoverflow.com/questions/4719476/create-controls-dynamically) – Sayse