Извините за очень конкретный вопрос, бот, почему VS2008 и VS2010 аварийно завершают работу с этим кодом? Хотя я обычно использую ObjectDataProvider для привязки свойства. Я видел примеры во многих местах в Интернете, но когда я пытаюсь использовать его, я получаю исключение, и моя VS закрывается.
Итак, что не так с моим кодом? Должен ли я зарегистрировать ошибку для VS?
<Window x:Class="ShortcutsManagementAddin.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:ShortcutsManagementAddin"
Title="Window1" Height="300" Width="300">
<Window.Resources>
<ObjectDataProvider x:Key="Window1" ObjectType="{x:Type local:Window1}" />
</Window.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="30" />
<RowDefinition Height="*" />
<RowDefinition Height="30" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="30" />
</Grid.ColumnDefinitions>
<TreeView ItemsSource="{Binding Source={StaticResource Window1}, Path=Categories}"></TreeView>
</Grid>
</Window>
namespace ShortcutsManagementAddin
{
public class Shortcut
{
public string CategoryName;
}
/// <summary>
/// Interaction logic for Window1.xaml
/// </summary>
public partial class Window1 : Window
{
private List<Shortcut> categories = new List<Shortcut>();
public List<Shortcut> Categories
{
get { return categories; }
}
public Window1()
{
categories.Add(new Shortcut { CategoryName = "Category 1" });
categories.Add(new Shortcut { CategoryName = "Category 2" });
categories.Add(new Shortcut { CategoryName = "Category 3" });
categories.Add(new Shortcut { CategoryName = "Category 4" });
categories.Add(new Shortcut { CategoryName = "Category 5" });
InitializeComponent();
}
}
}