Как сократить аббревиатуру значения столбца в сетке данных в Silverlight? - PullRequest
1 голос
/ 22 декабря 2010

здесь, в моей таблице данных, есть столбец «Тип». В этом столбце значения привязки будут «I» или «E», и будет отображаться то же самое. Здесь мне нужно получить значения столбца как «Внутренний» для «I» и «Внешний» для «E». Ниже приведен пример кода для этого столбца

 <sdk:DataGridTextColumn Header="Transfer Type" Binding="{Binding Type}"  />

1 Ответ

0 голосов
/ 22 декабря 2010

Вам необходимо создать конвертер значений.Подобные вещи очень нужны, поэтому я предпочитаю общий конвертер, чем создавать конкретный.Получить вырезать и вставить код для "StringToObjectConverter" из этого блога: Еще один блог о IValueConverter .

С этим конвертером в вашем проекте в пространстве имен по умолчанию (которое мы условно отображаемк локальному: псевдоним) теперь вы можете добавить экземпляр к ресурсу в вашем UserControl / Page: -

    <UserControl.Resources>
        <local:StringToObjectConverter x:Key="TypeFieldConverter">
            <ResourceDictionary>
                <sys:String x:Key="I">Internal</sys:String>
                <sys:String x:Key="E">External</sys:String>
            </ResourceDictionary>
        </local:StringToObjectConverter>
    </UserContro.Resources>

Обратите внимание, что есть также другой sys: псевдоним необходим

xmlns: sys = "clr-namespace: System; assembly = mscorlib"

Теперь вы можете назначить конвертер для вашей привязки: -

<sdk:DataGridTextColumn Header="Transfer Type" Binding="{Binding Type, Converter=TypeFieldConverter}"  />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...