UserControl:Dynamic-UserControl нажмите событие
private string lastName;
public string LastName
{
get { return lastName; }
set
{
lastName = value;
lastNameTextBox.Text = value;
}
}
Форма:
using (SqlConnection myDatabaseConnection = new SqlConnection(myConnectionString.ConnectionString))
{
myDatabaseConnection.Open();
using (SqlCommand SqlCommand = new SqlCommand("Select LasatName from Employee", myDatabaseConnection))
{
int i = 0;
SqlDataReader DR1 = SqlCommand.ExecuteReader();
while (DR1.Read())
{
i++;
UserControl2 usercontrol = new UserControl2();
usercontrol.Tag = i;
usercontrol.LastName = (string)DR1["LastName"];
usercontrol.Click += new EventHandler(usercontrol_Click);
flowLayoutPanel1.Controls.Add(usercontrol);
}
}
}
Форма загружает запись из базы данных и отображения каждого ЬавЬЫате в текстовом поле друг UserControls', который создал динамически. Как показать дополнительную информацию, такую как адрес в текстовом поле формы при щелчке динамического пользователя?
Попытка:
private void usercontrol_Click(object sender, EventArgs e)
{
using (SqlConnection myDatabaseConnection = new SqlConnection(myConnectionString.ConnectionString))
{
myDatabaseConnection.Open();
using (SqlCommand mySqlCommand = new SqlCommand("Select Address from Employee where LastName = @LastName ", myDatabaseConnection))
{
UserControl2 usercontrol = new UserControl2();
mySqlCommand.Parameters.AddWithValue("@LastName", usercontrol.LastName;
SqlDataReader sqlreader = mySqlCommand.ExecuteReader();
if (sqlreader.Read())
{
textBox1.Text = (string)sqlreader["Address"];
}
}
}
}
И попытка не работает, почему? Здесь недостаточно информации, чтобы даже представить себе, что вы пытаетесь сделать - ** и больше кода не будет ответом. ** Объясните, что вы хотите, что вы делаете , и что не работает. –
@ Майкл - http://stackoverflow.com/questions/16894918/display-a-number-of-usercontrol-based-on-the-number-of-records-in-the-database?noredirect1_comment24378920_16894918 –