2016-04-25 19 views
0

私は、テキストボックスがそのように作成してもらう:クリックしてダブルクリックすると、動的に作成するTextBoxの値をどのように与えることができますか? vb.net

Dim Result1 As New TextBox 
Result1.ID = "BOX_Result" & a & "_" & i 

私は「OK」の書き込みにそのテキストボックスをクリックしたときに私がしたいと私は/ OKしない

重要

を入れて、セルにダブルクリックしたときに! "Result1.Click表示エラー:" Clickは 'System.Web.UI.WebControls.TextBox'のイベントではありません "

私はそのようにしようとしたが動作しません

AddHandler Result1.Click, AddressOf Me.Result1_Click

Private Sub Result1_Click(ByVal sender As Object, _ 
    ByVal e As System.EventArgs) 
    Result1.Text = "OK" 
End Sub 

人がそのテキストボックス動的に作成されますが、クリック動作しないをクリックしたときに私が欲しいの助け

答えて

2

をしたいというあなたのTextBoxの定義にこれらの行を追加することができます。このコードでは

Result1.Attributes.Add("onclick", "this.value = 'OK';") 
Result1.Attributes.Add("ondblclick", "this.value = 'NOT/OK';") 

を、テキスト「/ OKしない」場合にユーザーに表示されるダブルTextBoxのクリックあなたの質問では、ダブルクリックの "セル内"について話します。その "セル"がTextBoxでない場合は、それがどのような種類のコントロールであるかを示してください。

+0

ありがとうございます、greateee! – Vladut

1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 

     Dim tb As New TextBox 'Create the new TextBox 

     AddHandler tb.DoubleClick, AddressOf TB_DoubleClick 'Add a handler to the textbox`s DoubleClick event 
     AddHandler tb.Click, AddressOf TB_Click 


     'Set any other properties of textbox you want here.... 

     Me.Controls.Add(tb) 'Add the textbox to the forms controls 

    End Sub 


'This is the textbox Click event handler sub 

Private Sub TB_Click(ByVal sender As Object, ByVal e As System.EventArgs) 

      Dim tb As TextBox = DirectCast(sender, TextBox) 'Cast the (sender) into a textbox to get access to the textbox`s properties 

      Result1.Text = "OK" 
     End Sub 


    'This is the textbox DoubleClick event handler sub 

    Private Sub TB_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) 

     Dim tb As TextBox = DirectCast(sender, TextBox) 'Cast the (sender) into a textbox to get access to the textbox`s properties 

     Result1.Text = "NOT OK" 
    End Sub 
+0

[OK]をクリックしても動作しません。その行が正しく、AddHandler Result1.Click、AddressOf Me.Result1_Clickが表示されますが、私がResult1.Clickの表示エラーを表示したとき:「ClickはSystem.Web.UI.WebControls.TextBoxのイベントではありません」 – Vladut

+0

@Vladut https:/ /www.experts-exchange.com/questions/20857671/System-Web-UI-WebControls-TextBox-Double-Click-Event.html – Dejan

+0

Ok @ dejan87は、TextBox2.Attributes.Add( "onclick"、 "javascript :alert( 'single click'); ")、javascriptが原因で警告が表示されますが、私のresult1に値" OK "を取得するにはどうすればいいですか、試してみますが、動作しません:TextBox2.Attributes。 – Vladut

1

のおかげで私はあなたのための簡単な例を作成してください:

Public Class Form1 



Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
      Dim Result1 As New TextBox 
      Result1.Text = "BOX_Result" 

      Dim loc As New Point With {.Y = 117, .X = 111} 
      Result1.Location = loc 

      Me.Controls.Add(Result1) 
      AddHandler Result1.Click, AddressOf Me.Result1_Click 
     End Sub 

     Private Sub Result1_Click(ByVal sender As Object, ByVal e As System.EventArgs) 

      Dim txt As TextBox = sender 
      sender.Text = "OK" 
     End Sub 
    End Class 

希望あなたが

+0

[OK]をクリックしても動作しません。その行が正しく、AddHandler Result1.Click、AddressOf Me.Result1_Clickが表示されますが、私がResult1.Clickの表示をしたときに表示します(「onclick」、「Result1.Text = "OK"エラー: "クリックは 'System.Web.UI.WebControls.TextBox'のイベントではありません – Vladut

関連する問題