通貨の値を受け入れるためのカスタムTextBoxコントロールがあります。私はそれをCurrencyTextBoxと呼んでいます。 <入力タイプ= "text" .../>と表示されますが、問題は<入力タイプ= "通貨" .../>をレンダリングする必要があります。注 - 「通貨」は標準タイプではなく、カスタムタイプです。カスタムTextBoxコントロールの 'type'属性を変更する方法
ここにいくつかのコードのサンプルがあります。この1つの問題とは別に、すべて正常に動作します。
"type"属性をレンダリングされたマークアップから変更する方法を検討するのは苦労しています。私はtext = "type"をtext = "currency"と言うように変更したい。 それはちょうど
writer.AddAttribute("text", "currency")
のように、属性を追加することは簡単ですが、それはまだ「タイプ= 『テキスト』」をレンダリングします。だから私は次を試した:
Attributes.Remove("type");
しかし、それは何もしないだけで動作します。
おそらく、私は
protected override void RenderAttributes(HtmlTextWriter writer)
を使用する必要がありますが、私は、コードがどうあるべきか、それが行くべき場所を正確に何かを動作することはできません。私は「通貨」と呼ばれる入力タイプのことを聞いたことがない
タイプは予約されているため、ブラウザは入力の「タイプ」(ボタン、テキストなど)を推測できます。なぜあなたが望むものと一致するformat、mask、inputStyleのような独自の属性を作成しないでください。 type = "Text" inputStyle = "currency" –