Отсутствует опция редактирования в Silverlight 4 DataForm - PullRequest
1 голос
/ 13 января 2010

Я пробую элемент управления DataForm Silverlight 4 beta. Кажется, я не могу получить параметры редактирования и подкачки в верхней части элемента управления, как я видел в примерах Silverlight 3. Что-то изменилось или я что-то не так делаю? Вот мой код:

<UserControl x:Class="SilverlightApplication7.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d"
    d:DesignHeight="300" d:DesignWidth="400" xmlns:dataFormToolkit="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data.DataForm.Toolkit">

    <Grid x:Name="LayoutRoot" Background="White">
        <dataFormToolkit:DataForm HorizontalAlignment="Left" Margin="10" Name="myDataForm" VerticalAlignment="Top" />
    </Grid>
</UserControl>

public partial class MainPage : UserControl
    {
        public MainPage()
        {
            InitializeComponent();

            this.Loaded += new RoutedEventHandler(MainPage_Loaded);
        }

        void MainPage_Loaded(object sender, RoutedEventArgs e)
        {
            Movie movie = new Movie();  
            myDataForm.CurrentItem = movie; 
        }

        public enum Genres
        {
            Comedy,
            Fantasy,
            Drama,
            Thriller
        }

        public class Movie
        {
            public int MovieID { get; set; }
            public string Name { get; set; }
            public int Year { get; set; }
            public DateTime AddedOn { get; set; }
            public string Producer { get; set; }
            public Genres Genre { get; set; }
        }  
    }

Ответы [ 2 ]

1 голос
/ 26 января 2010

Поведение вашего кода выше идентично в VS2008 + SL3.

DataForm предоставляет панель навигации только в том случае, если вы предоставляете ей набор элементов, назначенных свойству ItemsSource. Присваивая непосредственно свойству CurrentItem, вы фактически запрашиваете у DataForm «пожалуйста, отредактируйте этот элемент», что и делает.

0 голосов
/ 21 марта 2010

AnthonyWJones верен в вопросе о поисковом вызове. Вам нужно привязать к коллекции, чтобы получить опции Next / Previous. Я считаю, что вам нужно реализовать IEditableObject, чтобы появилась опция View / Edit.

...