Domanda

Sto provando il controllo di Silverlight 4 Beta DataForm. Non mi sembra di essere in grado di ottenere la modifica e paging opzioni nella parte superiore del controllo, come ho visto in Silverlight 3 esempi. qualcosa è cambiato o sto facendo qualcosa di sbagliato? Ecco il mio codice:

<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; }
        }  
    }
È stato utile?

Soluzione

Il comportamento del codice di cui sopra è identico in VS2008 + SL3.

L'DataForm fornisce solo la barra di navigazione se si fornisce con una serie di elementi assegnati alla proprietà ItemsSource. Assegnando direttamente alla struttura CurrentItem si sono in effetti chiedendo al DataForm "si prega di modificare questo elemento", che è esattamente ciò che il suo fare.

Altri suggerimenti

AnthonyWJones è corretto sulla questione di paging. È necessario associare alla raccolta per ottenere le opzioni Avanti / Indietro. Credo che è necessario implementare IEditableObject per l'opzione Visualizza / Modifica per apparire.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top