- PR -

[ASP.NET] Labelを継承したWEBカスタムコントロールについて

1
投稿者投稿内容
ぼると
常連さん
会議室デビュー日: 2003/04/09
投稿数: 42
投稿日時: 2003-04-09 21:21
Label を継承してWEBカスタムコントロールを作成しているのですが、
Textプロパティをオーバーライドするとビルド後、WEBフォームに
貼り付けるとコントロールの作成エラーになってしまいます。
どうすれば正常に貼り付けられるでしょうか?

環境は
Windows XP Pro SP1
VS.NET(VB.NET)
.NET Framework SP2
です。
コード:
------------------ここから--------------------- 
Imports System.ComponentModel 
Imports System.Web.UI 

<DefaultProperty("Text"), ToolboxData("<{0}:CustomLabel runat=server></{0}:CustomLabel>")> _ 
Public Class CustomLabel 
Inherits System.Web.UI.WebControls.Label 

    Public Overrides Property Text() As String 
        Get
            Return MyBase.Text 
        End Get 
        Set(ByVal Value As String) 
            MyBase.Text = Value 
        End Set
    End Property 

End Class 
------------------ここまで--------------------- 

Qoo
大ベテラン
会議室デビュー日: 2003/04/08
投稿数: 121
投稿日時: 2003-04-10 11:36
こんにちは。

Public Overrides Property Text() As String

Public Overrides Property [Text]() As String
としてみてはどうですか?
ぼると
常連さん
会議室デビュー日: 2003/04/09
投稿数: 42
投稿日時: 2003-04-10 14:16
Qooさん、回答ありがとうございます。

引用:

Public Overrides Property [Text]() As String


に変更して見ましたが、効果はありませんでした。

C# で等価(なつもり)なコードをかいて見ると正常に動作しました。
VBのコンバイラにバグでもあるんでしょうか。
Qoo
大ベテラン
会議室デビュー日: 2003/04/08
投稿数: 121
投稿日時: 2003-04-10 16:13
こんにちは。
試しもせずに、発言してすみません。(^^;

実際、試してみたところ、VB.NETでLabelから継承する場合に
「コントロールの作成エラー」となってしまいますねぇ。。。
TextBoxから継承すると作成エラーは出ませんでした。

作成エラーとなった時に表示される、
「あいまいな一致がみつかりました」って何なんやろ、というところです。
ぼると
常連さん
会議室デビュー日: 2003/04/09
投稿数: 42
投稿日時: 2003-04-10 18:36
試して頂きありがとうございました。

私の環境が原因かと思っていましたが、そういうわけではないようですね。
とりあえずこのコントロールだけC#で作って逃げておきます。
1

スキルアップ/キャリアアップ(JOB@IT)