0

ねえ、vb.net でボーダレス ボタンを作成する方法について質問していました。いつでもスタイルをフラットに設定し、背景色を透明にすることができますが、常にボタンにフォーカスを合わせてボタンの形で表示し、それが私の台無しになります。ここに入れたいボタンスタイルは以前使ったクラスですがうまくいきませんでした

Public Class ButtonEx
Inherits Button

    Private _ShouldShowFocus As Boolean = False
    Public Property ShouldShowFocus() As Boolean
        Get
            Return _ShouldShowFocus
        End Get
        Set(ByVal value As Boolean)
            _ShouldShowFocus = value
        End Set
    End Property

    Protected Overrides ReadOnly Property ShowFocusCues() As Boolean
        Get
            Return _ShouldShowFocus
        End Get
    End Property

End Class
4

3 に答える 3

1

標準ボタンをサブクラス化し、OnPaint メソッドをオーバーライドして、ボーダーレス ボタンを実現できます。

Class BorderlessButton
Inherits Button

Protected Overrides Sub OnPaint(ByVal pe As PaintEventArgs)
    MyBase.OnPaint(pe)
    pe.Graphics.DrawRectangle(New Pen(BackColor, 5), ClientRectangle)
End Sub

End Class

プロパティを試してみたがButton.FlatAppearance、これらのどれも問題の解決に役立たなかったと思います。

于 2013-05-18T23:45:55.050 に答える
0

クリック可能なラベルを使用できるので、ホバーコードを追加するだけで境界線がなくなります.....

また、asp.netを使用している場合は、ブートストラップまたはcssを使用できます

于 2013-10-08T07:22:57.427 に答える