Я пытаюсь показать данные из таблицы tblSysproStock
и отобразить ее в datagrid. Некоторые типы данных столбцов в таблице: поплавки.Доступ к свойствам сложных объектов в инициализаторе класса C# WPF
Вот фрагмент кода, как я хочу, чтобы загрузить данные в моей DataGrid:
private void FillSysproDataGrid()
{
using (DataClassesDataContext DC = new DataClassesDataContext())
{
dgSysproStock.ItemsSource = DC.tblSysproStocks.Where<tblSysproStock>(c => c.StockID != null)
.Select<tblSysproStock, SSData>(m => new SSData()
{
SID = m.StockID,
SCode = m.StockCode,
SDescription = m.StockDescription,
SConvFactAltUom = (float)m.ConvFactAltUom, //-- Here is the problem
...
});
}
}
класс, который я использую:
public struct SSData
{
public string _ss;
public int SID { get; set; }
public string SCode { get; set; }
public string SDescription { get; set; }
public float SConvFactAltUom { get; set; }
...
}
Теперь ошибка, которую я получаю -
The null value cannot be assigned to a member with type System.Single which is a non-nullable value type.
Теперь я не знаю, как получить доступ к свойствам моего сложного объекта с кодом, который я должен отображать мои данные в моем datagrid. Если бы кто-нибудь мог помочь, я был бы очень благодарен. Благодаря!
Спасибо за ваш комментарий! Я довольно неофит для кодирования, поэтому я не знаю, как реализовать «float»? внутри моего кодирования. Я попытался заменить 'SConvFactAltUom = (float) m.ConvFactAltUom,' с помощью 'SConvFactAltUom = (float?) M.ConvFactAltUom,' но он дает мне ошибку: не удается ли неявно преобразовать тип 'float?' держаться на плаву'? – CareTaker22
Измените тип в 'SSData', от' public float SConvFactAltUom' до 'public float? SConvFactAltUom'. –
Вот и все! большое спасибо – CareTaker22