0

CustomButtonを継承する .NET クラス がありますControl。だから私はCustomButton.vb次のようなファイルを持っています

Public Class CustomButton
    Inherits Control

    Public Sub New()
        Me.InitializeComponent()
    End Sub
End Class

オーバーライドしたいすべてのプロパティを使用します。クラスを使用するときは、既存のプロジェクトに移動して現在のプロジェクトにリンクします。クラスは複数のプロジェクトにリンクされている可能性があります。

カスタム フォームを作成して画像を埋め込むと、.resx ファイルが作成されます。

だから私の質問…。サブ/関数の 1 つで、Me.BackgroundImage = xx が画像になるようなものが必要です。その場合Me.BackgroundImage = My.Resources.x、カスタム クラスをリンクしたすべてのプロジェクトに x を含める必要があります。私が持つ方法はありCustomButton.vbますCustomButton.resxか?もしそうなら、私はその呼び出しで画像にアクセスしますRed.xか?

これは理にかなっていますか?

4

2 に答える 2

0

Hans Passantが言ったことは、私を正しい方向に向かわせました。

.vb元のファイルがどのように開始されたかはわかりませんが、.designer.vbまたはがありませんでし.resxた。.resxフォームからをコピーし、.vbファイルの名前を変更しました。で、.designer.vb同じクラス名が 2 つ見られました。.designer.vb離れているときにファイルの1つを除外したとき。これが私がそれを機能させる方法です。@Hans Passantが言ったことを取り上げて、フォームとそれがリソースをどのように参照しているかを調べました。

Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(xxxx))

xxxx はクラスの名前です。次に、.png ファイルをリソースに追加し、yyyy という名前を付けました。

Me.BackgroundImage = CType(resources.GetObject("yyyy"), System.Drawing.Image)
于 2013-11-05T22:52:30.973 に答える