Я пытаюсь смоделировать систему инвентаризации сетки. У меня есть эта сетка с несколькими строками и столбцами. У меня есть ресурс, который является образом. Ошибка я получаю:WPF назначает границу фона из ресурса изображения
Не может неявно преобразовать тип «System.Windows.Controls.Image» до «System.Windows.Media.Brush»
Если я изменить изображение, чтобы бросить ImageBrush тогда проект компилируется, но exe аварийно завершает работу.
<Grid x:Name="MasterGrid" Margin="0">
<Grid.Resources>
<Image x:Key="notepad" Source="notepad_16x16.jpg" />
</Grid.Resources>
// create a border and set it's background image
Border border = new Border();
border.Visibility = System.Windows.Visibility.Visible;
var img = (Image)MasterGrid.FindResource("notepad");
border.Background = img;
// add the border to the grid
Grid.SetRow(border, 0);
Grid.SetColumn(border, 1);
Grid.SetRowSpan(border, 1);
Grid.SetColumnSpan(border, 1);
InvGrid.Children.Add(border);
Мне нужно сделать это в коде. Это все динамичный материал. – user441521
См. Обновленный ответ. –
Это сработало. В чем разница между используемым мной изображением и используемым BitmapImage? Кроме того, я заметил, что в моем коде RowSpan должен быть 2. Если это 1, граница вообще не появляется. Если он равен 2, он отображается нормально в 1 ячейке. Я бы подумал, что если RowSpan равно 2, это займет 2 строки, но это не так. Почему это так? – user441521