ビューのフォームに数値を表示するために、ASP.NET MVC 4 と Kendo UI CurrencyTextBox を使用しています。Kendo は標準のテキスト ボックス コントロールを提供しないため、数値以外のテキスト ボックスには @Html.EditorFor を使用します。剣道は css に含まれる多くの「テーマ」を提供します。私は kendo.default.min.css を使用しています。明らかに、フォームに一貫性を持たせ、すべてのコントロール (剣道であろうとなかろうと) が同じように見えるようにしたいと考えています。同様の投稿を読んで、Telerik のスタッフは、TextboxFor ではなく EditorFor を使用しているため、「k-textbox」クラスをテキストボックスに追加することを提案しました。スタイル。
ビューのコードは次のとおりです。
<div class="editor-field">
@Html.LabelFor(m => m.illus_LoanAmount)
@(Html.Kendo().CurrencyTextBoxFor(m => m.illus_LoanAmount)
.Spinners(false)
.Format("{0:£#,##0;(£#,##0)}"))
@Html.ValidationMessageFor(m => m.illus_LoanAmount)
</div>
<div class="editor-field">
@Html.LabelFor(m => m.illus_RepaymentType)
<div class="k-textbox">
@Html.EditorFor(m => m.illus_RepaymentType)
</div>
@Html.ValidationMessageFor(m => m.illus_RepaymentType)
</div>
以下は「ある程度」正しいように見えますが、決してピクセルパーフェクトではないため、本番環境にはほど遠いものです。私はこれが私自身のcssの結果ではないことを確認し、TextboxForでインラインスタイルも試しましたが、まだうまくいきません.
私の解決策は、剣道の CSS スタイルを完全に削除することですが、これは少し残念に思えます。標準コントロールを剣道/テレリックのもののようにドレスアップした経験のある人はいますか?