|
■No32953 (マジョラム さん) に返信
> テキストボックスで、右クリックするコンテキストメニューが表示され、
> その中に貼り付けがありますが、それを禁止したいと思い、いろいろと
> 調べました。
(案1) 右クリック前に、Clipboard を Clear してしまう。
(案2) [貼り付け]されても動作しないよう、WM_PASTE を握りつぶす。
' 案2
Public Class Form1
Private TextBox1, TextBox2 As TextBox
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
TextBox1 = New TextBox()
TextBox1.Text = "通常版"
TextBox2 = New TextBoxEx()
TextBox2.Text = "貼付不可"
Controls.Add(TextBox1)
TextBox2.Top = TextBox1.Bottom + 3
Controls.Add(TextBox2)
End Sub
End Class
Public Class TextBoxEx
Inherits TextBox
Protected Overrides Sub WndProc(ByRef m As Message)
Const WM_PASTE As Integer = &H302
If m.Msg <> WM_PASTE Then
MyBase.WndProc(m)
End If
End Sub
End Class
|