Silverlight Telerik GridView MaxLength? - PullRequest
       21

Silverlight Telerik GridView MaxLength?

1 голос
/ 30 января 2012

Я использую telerik gridview для silverlight, и я пытаюсь программно установить максимальную длину символа в каждом отдельном столбце после заполнения gridview данными.Я хочу сделать так, чтобы, когда пользователь вставляет или редактирует ячейку столбца, максимальная (char) длина устанавливается на основе максимальной длины контрольных записей.До сих пор я только мог установить MaxWidth, но это не помогает мне, потому что заголовок столбца всегда длиннее, чем допустимый текст, и MaxWidth устанавливает ширину столбца в пикселях, а не столбцы, редактирующие максимальную длину символа.Может кто-нибудь направить меня в правильном направлении.Я могу предоставить некоторый код, если это необходимо.

Я попытался установить его в column.CellEditTemplate.SetValue (TextBoxEditor.MaxLengthProperty, MYMAXLENGTH);

, но выдает ошибку.

Ответы [ 2 ]

0 голосов
/ 31 января 2012

Как насчет этого?

Style textBoxStyle = new Style(typeof(TextBox));
textBoxStyle.Setters.Add(new Setter(TextBox.MaxLengthProperty, myMaxLength));
(this.MyGrid.Columns[0] as GridViewBoundColumnBase).EditorStyle = textBoxStyle;

http://www.telerik.com/community/forums/silverlight/gridview/best-way-to-set-maxlength-on-gridviewdatacolumn.aspx

0 голосов
/ 30 января 2012

Я не уверен, каков контекст данных вашей сетки или где находится "контрольная запись", но, возможно, что-то подобное поможет?

<telerik:RadGridView ItemsSource="{Binding MyData, Source={StaticResource MyViewModel}}">
    <telerik:RadGridView.Columns>
        <telerik:GridViewDataColumn>
            <telerik:GridViewDataColumn.CellEditTemplate>
                <DataTemplate>
                    <TextBox MaxLength="{Binding MyMaxLength, Source={StaticResource MyViewModel}}" />
                </DataTemplate>
            </telerik:GridViewDataColumn.CellEditTemplate>
        </telerik:GridViewDataColumn>
    </telerik:RadGridView.Columns>
</telerik:RadGridView>

Или, если вы не используете представление-model и нужно привязать к свойству UserControl, затем использовать ElementName вместо Source в привязке TextBox.(Хотя вы действительно не можете использовать ElementName, если не добавите что-то вроде этого: Связывание ElementName внутри шаблона ячейки .)

...