Как я могу передать экземпляр объекта ObjectDataProvider через событие нажатия кнопки;используя XAML? - PullRequest
0 голосов
/ 08 декабря 2011

Я пытаюсь передать экземпляр объекта, определенный ObjectDataProvider, в событие нажатия кнопки.Я видел несколько постов, в которых предлагалось использовать свойство Tag на кнопке для передачи объекта методу click, однако я получаю нулевой объект в методе события click.

Следующий код определяет экземпляры объектовusing ObjectDataProvider:

<Window.Resources>
    <ObjectDataProvider x:Key="ObjectTypes" ObjectType="{x:Type rvcfg:ConfigDataProvider}" MethodName="GetObjectTypes"/>
    <ObjectDataProvider x:Key="Regions" ObjectType="{x:Type rvcfg:ConfigDataProvider}" MethodName="GetRegionObjects"/>
    <ObjectDataProvider x:Key="Caches" ObjectType="{x:Type rvcfg:ConfigDataProvider}" MethodName="GetCacheObjects"/>
</Window.Resources>

Следующий код определяет кнопку;через который я пытаюсь передать объект «ObjectTypes», который изменяется в элементе управления ListView.

    <Button Content="Save" Height="23" HorizontalAlignment="Left" Margin="410,293,0,0"               Name="btnSave" VerticalAlignment="Top" Width="75" Click="btnSave_Click" Tag="{Binding Source=ObjectTypes}"/>

Объект ObjectTypes содержит три строковых перечислителя и пользовательский ENUM.Буду признателен за любые указания относительно того, как я могу передать этот объект методу события щелчка.

Спасибо, KBW

Ответы [ 2 ]

0 голосов
/ 09 декабря 2011

Другой способ сделать это - использовать Command с CommandParameter, а не событие Click с тегом.

<Button Command="Built_In_Or_Custom_Command" CommandParameter="{StaticResource ObjectTypes}" />
0 голосов
/ 08 декабря 2011

Это должно быть Tag="{StaticResource ObjectTypes}" или Tag="{Binding Source={StaticResource ObjectTypes}}".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...