2014-10-03 2 views
0

Я пытаюсь изменить текст в метке внутри формы. Теоретически, когда пользователь нажимает кнопку, это должно перейти в таблицу SQL, извлечь данные и ввести новый текст в метку с именем «Описание». Это привязка данных, поэтому я подозреваю, что это часть моей проблемы, поскольку я получаю сообщение об ошибке «Ссылка на объект не установлена ​​в экземпляр объекта».change formview databound label text

Ниже жерех часть (извините, но это не будет отображаться точно так, как он вошел в осина):

тд класс = «style29» Объединение столбцов = «4» стиль = "границы: 1px твердый # 000000 "> сильный> Описание:/сильный>

осины: Этикетка ID =" DescriptionLabel»Runat = "сервер" Текст = '<% # Bind ("Описание")%>' Ширина = "1000px"

Ниже приведен код VB:

Protected Sub Button1_Click(sender As Object, e As System.EventArgs) Handles Button1.Click 
    Dim conCString1 As String = ConfigurationManager.ConnectionStrings("conCString1").ConnectionString 
    Dim sqlConnection1 As SqlConnection = New SqlConnection(ConfigurationManager.ConnectionStrings("conCString1").ConnectionString) 
    Dim cmd1 As New SqlCommand 
    cmd1.CommandType = CommandType.Text 
    cmd1.Connection = sqlConnection1 

    Dim querystring1 As String = "SELECT [Rule] FROM [BuildRules] WHERE ([Table] = N'Capacitors') AND (Field = N'Description')" 
    sqlConnection1.Open() 
    Dim command2 As New SqlCommand(querystring1, sqlConnection1) 
    Dim reader2 As SqlDataReader = command2.ExecuteReader() 
    Dim lblD As Label = FormView1.FindControl("DescriptionLabel") 

    While reader2.Read() 
     'below is test line only 
     lblD.Text = reader2(0) 'Example: 'CAP', Value, Dielectric Type, Package Size, Rated Voltage, Tolerance, Temperature Coefficient 


    End While 
    sqlConnection1.Close() 

End Sub 

ответ

0

Я не думаю, что ваш «FindControl» работает правильно. Попробуйте следующее:

Dim lblD As Label = DirectCast(FindName("DescriptionLabel"), Label) 

И посмотрите, работает ли это.

+0

Как оказалось, я был в режиме редактирования формы и искал текстовое поле, а не ярлык (новичок упс). Я пойду вперед и отметю, что это решено, спасибо. –