c#
  • asp.net
  • 2011-03-05 18 views 1 likes 
    1

    私のコントロールのテキストをローカライズする機能があります。UserControlプロパティへのアクセスascxファイル

    // code behind 
    lblName.Text = Localization.GetLocalValue("Updated" , this.Path); 
    

    と私は私がASCXファイル内の関数を呼び出すことができることを知っています。

    // ascx file 
    Text='<%#Global.Convert((DateTime)(Eval("CreatedDate")) %>' 
    

    にはどうすればGetLocalValueを呼び出すにASCXファイルでパスプロパティを取得することができますか?

    +0

    ?ファイル名は?ファイルパスは? @ cusimar9:私のコントロールのためのカスタムプロパティです。サーバー変数はあなたにとって役に立ちます。 – cusimar9

    +0

    @ cusimar9 – Raika

    答えて

    1

    あなただけの背後にあるコードでパブリックプロパティパスを作成する必要があります。

    public string LocalizedPath 
    { 
        get 
        { 
         return Localization.GetLocalValue("Updated" , this.Path); 
        } 
    } 
    

    そして、あなたが.aspxの中でそれを使用することができますより:あなたは「パス」で参照している正確にどのような

    <script type="text/javascript"> 
        alert('<%= LocalizedPath %>'); 
    </script> 
    
    +0

    =私はその公共財産を持っています。私はコードの背後でそれを使用します。 <%#Localization.GetLocalValue( "Updated"、this.Path)%>はどうでしょうか?私は他の<% %>の中に<% %>を書くことができますか? – Raika

    +0

    @Raika:<%= %>を別の<%= %>の中に書く必要はありません。<%#Localization.GetLocalValue( "Updated"、Path)%>のように見えます。また、それが動作しない場合は私の答えをチェックしてください。 –

    +0

    <%#Localization.GetLocalValue( "Updated"、Path)%>このエラーが発生しました**データバインディング式は、DataBindingイベントを持つオブジェクトでのみサポートされています。 System.Web.UI.WebControls.BoundFieldにはDataBindingイベントがありません。**私はGridview列のヘッダーテキストにこのイベントを使用します。 – Raika

    関連する問題