前提・実現したいこと
.NET Framework 4.8で開発していたwindowsアプリケーションを.NET5.0で移植している際にXAMLエラーは発生してしまい解決できずに困っています。
エラーの詳細はXDG0012 XAMLで、ListViewにネストしたGridViewのDataContextが認識されずうまく参照されないというものでデザイナーなどが表示されません。
できていた物ができなくなりました。
このエラーを解消したいです。よろしくお願いします。
■■な機能を実装中に以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
XDG0012 メンバー”DataContext”が認識されないか、アクセスできません。
該当のソースコード
UserControl1.xaml
<UserControl x:Class="Sample.ControlPanel.Gui.Views.Controls.UserControl1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:local="clr-namespace:Sample.ControlPanel.Gui.Views.Controls" xmlns:models="clr-namespace:Sample.ControlPanel.Gui.Models" mc:Ignorable="d" d:DesignHeight="450" d:DesignWidth="800"> <Grid> <ListView ItemsSource="{Binding SampleCollection}"> <ListView.Resources> <GridView x:Key="ImageServerEditView" d:DataContext="{d:DesignInstance {x:Type models:Sample}}"/> </ListView.Resources> </ListView> </Grid> </UserControl>
sampleViewModel.cs
public class sampleViewModel { SampleCollection = new ObservableCollection<Sample> { new Sample() { Id = 1 }, new Sample() { Id = 2 }, }; } public ObservableCollection<Sample> SampleCollection { get; }
sample.cs
public class Sample : BindableBase { private int _channelId; public Sample() { } public int ChannelId { get => _channelId; set => SetProperty(ref _channelId, value); } }
試したこと
・DataGridにSample.csを参照させるこはできた。(アクセスレベルの話ではなかった)
補足情報(FW/ツールのバージョンなど)
移植元
C#
Prism+Reactiveproperty
対象フレームワーク:.NET Framework 4.8
移植先
C#
Prism+Reactiveproperty
対象フレームワーク:.NET5.0
※足りない情報があれば教えてください。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。