から派生コントロールを作成しましたがPropertyGrid
、次のプロパティにより、デザイン時に Visual Studio で問題が発生します。
注: 実行時に問題はありません。それはデザイナーだけの問題であり、フォームのリソース ファイルからエンコードされた値を手動で削除すると問題が解決します。
コンストラクター:
/// <summary>
/// Public constructor.
/// </summary>
public FilterablePropertyGrid()
{
base.SelectedObjects = wrapper.ToArray();
}
プロパティ コード:
private List<ObjectWrapper> wrapper = new List<ObjectWrapper>();
/// <summary>
/// Overwride the PropertyGrid.SelectedObject property.
/// The object passed to the base PropertyGrid is the wrapper.
/// </summary>
public new List<ICustomType> SelectedObjects
{
get
{
return wrapper.Any() ?
base.SelectedObjects.Select(p => ((ObjectWrapper)p).SelectedObject).ToList() :
new List<ICustomType>();
}
set
{
if (value == null || value.Count == 0)
{
wrapper = new List<ObjectWrapper>();
base.SelectedObjects = new object[] { };
}
else
{
wrapper = new List<ObjectWrapper>(value.Select(p => new ObjectWrapper(p)));
// Link the wrapper to the parent PropertyGrid.
base.SelectedObjects = wrapper.ToArray();
}
}
}
エラー:
何が問題なのか教えていただけないでしょうか。