コンテンツを作成し、GridViewTemplateColumn内に挿入するテンプレートを編集して、テンプレートをHTMLに繰り返し挿入しないようにすることは可能ですか?カスタムGridViewTemplateColumnまたはContentTemplateとEditTemplate?
私は約15の列を持っていますが、すべて同じような機能が必要です(コンテンツフェーズではテキストがあり、編集では複数行のテキストボックスがあります)、テンプレート列を使用するとうまくいきます。
ただし、テンプレートを変更したい場合は、すべて変更する必要があります。
テンプレート列を拡張するためのカスタムコントロールを作成することでこれを動作させることができると思ったことはすべて試しましたが、DotVVMについて十分に知りません。
ご協力いただければ幸いです。
解決済み!以下の解決策。 DotvvmStartup.cs
でpublic class MultiLineTextColumn : GridViewTextColumn
{
public override void CreateEditControls(IDotvvmRequestContext context, DotvvmControl container)
{
var textBox = new TextBox();
textBox.FormatString = FormatString;
textBox.ValueType = ValueType;
textBox.SetBinding(TextBox.TextProperty, GetValueBinding(ValueBindingProperty));
textBox.Type = TextBoxType.MultiLine;
container.Children.Add(textBox);
}
}
config.Markup.Controls.Add(new DotvvmControlConfiguration
{
TagPrefix = "cc",
Namespace = "Project.Controls",
Assembly = "Project"
});
カスタムコントロールを使用するのが正しい方法かもしれないと思います。あなたは何を試してみましたか?私はむしろ全体の解決策を投稿しないだろう。 –