setLoanItem - это метод экземпляра, то есть вам нужен экземпляр класса Media для его вызова. Вы пытаетесь вызвать его по самому типу Media.
Возможно, вам захочется ознакомиться с некоторыми базовыми объектно-ориентированными учебниками, чтобы узнать, как работают члены static / instance.
void tb_TextChanged(object sender, EventArgs e)
{
var enteredText = (sender as TextBox).Text
...
}
Отображение MessageBox
в TextChanged
будет очень раздражать.
Вместо этого вы можете попробовать его в событии DataGridView.CellValidated , которое запускается после завершения проверки ячейки.
Пример кода:
dataGridView1.CellValidated += new DataGridViewCellEventHandler(dataGridView1_CellValidated);
void dataGridView1_CellValidated(object sender, DataGridViewCellEventArgs e)
{
if (dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value != null)
{
MessageBox.Show(dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString());
}
}
Попробуйте это. Учтите, что объект управления объявлен как глобальный.
Control cnt;
void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
{
e.Control.TextChanged +=new EventHandler(tb_TextChanged);
cnt=e.Control;
cnt.TextChanged +=tb_TextChanged;
}
void tb_TextChanged(object sender, EventArgs e)
{
if(cnt.Text!=string.Empty)
{
textBox.Text=cnt.Text;
MessageBox.Show(textBox.Text);
}
}
String enteredText = ((TextBox)sender).Text;
эквивалентен. – ThunderGr 6 February 2014 в 12:46