Чтобы отобразить значение на веб-сайте Silverlight на основе значения столбца таблицы базы данных - PullRequest
0 голосов
/ 10 февраля 2020

У меня есть таблица базы данных, в которой есть столбец с именем «Status», а значение в столбце «Status» будет равно 1, 0 или нулю. Я пытаюсь достичь, если значение равно 1, должно отображаться «Вкл.», Если значение равно 0, должно отображаться «Выкл.», Если значение равно нулю, оно должно отображать «ноль». Вот фрагмент кода, который я пробовал до сих пор, я не могу понять, как отобразить результат на основе значения столбца таблицы. Я прилагаю пример вывода изображения. Пожалуйста, предоставьте некоторую идею, которая может помочь мне в этом случае
Вывод на дисплей

#Accessing table value
public IQueryable<MSDS_VII> GetMSDS()
{
    return (
        from r in this._context.MSDS_VII
        orderby r.NO
        select r);
}

#Creating ria service
   public void GetMSDS(Action<CustomLoadOperation<MSDS_VII>> loadCompleted, object 
   userState = null, int pageSize = 20)
    {
        new CustomDataAdapter<MSDS_VII>(this.client, this.client.GetMSDSQuery(), this.client.MSDS_VIIs, pageSize, loadCompleted, userState);
    }

#View Model
public class MSDSStatusViewModel : BaseViewModel
{

    [ImportingConstructor]
    public MSDSStatusViewModel(IWindowManager windowManager, IEventAggregator eventAggregator, DomainServiceClient service)
        : base()
    {
        this.windowManager = windowManager;
        this.service = service;
        this.eventAggregator = eventAggregator;
        this.DisplayName = "MSDS VII Status";
    }

    public DomainCollectionView<MSDS_VII> msdsList;

    public DomainCollectionView<MSDS_VII> MSDSList
    {
        get
        {
            return this.msdsList;
        }
        set
        {
            this.msdsList = value;
            this.NotifyOfPropertyChange(() => MSDSList);
        }
    }


    public override void GetData()
    {
        this.service.GetMSDS(this.OnGeneralItemsLoadCompleted<MSDS_VII>);
    }

    public override void OnGeneralItemsLoadCompleted<TEntity>(CustomLoadOperation<TEntity> result)
    {
        base.OnGeneralItemsLoadCompleted(result);
        if (result.Result.IsComplete)
        {
            if (typeof(TEntity).Equals(typeof(MSDS_VII)))
            {
                MSDSList = result.CollectionView as DomainCollectionView<MSDS_VII>;                      
            }
        }
    }

#View xaml code
<c1:C1FlexGrid Grid.Row="1" ItemsSource="{Binding MSDSList}"  AutoGenerateColumns="False" HeadersVisibility="Column" GroupRowPosition="BelowData" MaxColumnWidth="500" c1:LicenseMode.Evaluation="True">
        <c1:C1FlexGrid.Columns>
           <c1:Column Binding="{Binding NO}" Header="NO."Width="70" />
           <c1:Column Binding="{Binding ITEM}" Header="Item" Width="400"  />
           <c1:Column Binding="{Binding STATUS}" Header="Status" Width="130" />
        </c1:C1FlexGrid.Columns>
 </c1:C1FlexGrid>

1 Ответ

0 голосов
/ 11 февраля 2020

Вам необходимо создать пользовательский конвертер, чтобы преобразовать значение в значение, соответствующее элементу управления, и наоборот. В Интернете есть множество примеров .. Я нашел этот после быстрого поиска, который должен помочь вам .. IValueConvertor

...