Witam,
Mam aplikację w której łączę się z bazą MySQL i chciałem zrobić formę z insertem gdzie będą label-e z nazwą kolumny i textbox-y aby wpisać wartość i na końcu przycisk wykonujący zapytanie. I wszystko pięknie śmiga, ale pojawił się problem kiedy kolumna ma typ BLOB. Ogólnie tworzę sobie dynamicznie tablicę Label-i i Textbox-ów ponieważ nie wiem ile będzie kolumn w danej w tabeli w bazie. Lecz chciałem dodać taką opcję, że jak dana kolumna ma typ BLOB to by obok niej był przycisk i po kliknięciu jego otwiera się OpenFileDialog i wskazujemy ścieżkę danego pliku i ona się do danego TextBox-a wpisuje. Umiem stworzyć wszystkie komponenty, stworzyłem zdarzenie dla przycisku by otworzył OpenFileDialog, problem jest w tym, że nie wiem jak zrobić by ta ścieżka wpisywała się do danego TextBox-a, jak rozpoznać z którego przycisku poszedł Click aby wpisać do poprawnego TextBox-a ścieżkę?
int helpCounter = 0;
for (int i = 0; i < label.Length; i++)
{
label[i] = new Label();
label[i].Left = 15;
label[i].Top = (30 * i) + 10;
label[i].Text = myList[i];
textbox[i] = new TextBox();
textbox[i].Left = 140;
textbox[i].Top = (30 * i) + 10;
if (blobList[i] == "blob")
{
buttonArray.Add(i,new Button());
buttonArray[helpCounter].Top = (30 * i) + 10;
buttonArray[helpCounter].Left = 245;
buttonArray[helpCounter].Width = 25;
buttonArray[helpCounter].Height = 20;
buttonArray[helpCounter].Text = "...";
buttonArray[helpCounter].Click += new EventHandler(myButton_Click);
addRecord.Controls.Add(buttonArray[helpCounter]);
helpCounter++;
}
addRecord.Controls.Add(textbox[i]);
addRecord.Controls.Add(label[i]);
addRecordButton.Top = (30 * i) + 50;
}
private void myButton_Click(object sender, EventArgs e)
{
Button myButton = sender as Button;
DialogResult result = openFileDialog1.ShowDialog(); // Show the dialog.
if (result == DialogResult.OK)
{
pathFile = openFileDialog1.FileName;
}
}
Pozdrawiam,
Maciek