SORU
26 Mayıs 2011, PERŞEMBE


Nasıl WPF combobox denetimi için bir numaralama bağlamak için?

Çeteleler gibi gösterildiği basit bir örnek bulmaya çalışıyorum. Gördüğüm bütün örnekler güzel görünen dizeleri eklemek için çalışır ama bu karmaşıklık istemiyorum.

Temelde xaml dosyasında önce bu sınıf için DataContext ayarı, ve sonra bu gibi bağlama belirterek ben bağlama,: tüm özelliklerini taşıyan bir Dersim var

<ComboBox ItemsSource="{Binding Path=EffectStyle}"/>

Ama bu öğeleri olarak ComboBox numaralandırma değerleri göstermiyor.

CEVAP
26 Mayıs 2011, PERŞEMBE


Pencere Loaded olay işleyicisi, örneğin aşağıdaki kodu girerek kod olabilir

yourComboBox.ItemsSource = Enum.GetValues(typeof(EffectStyle)).Cast<EffectStyle>();

Eğer XAML ilişkilendirmek gerekirse ObjectDataProvider nesne bağlama kaynağı olarak kullanılabilir oluşturmak için kullanmanız gerekir:

<Window x:Class="YourNamespace.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:System="clr-namespace:System;assembly=mscorlib"
        xmlns:StyleAlias="clr-namespace:Motion.VideoEffects">
    <Window.Resources>
        <ObjectDataProvider x:Key="dataFromEnum" MethodName="GetValues"
                            ObjectType="{x:Type System:Enum}">
            <ObjectDataProvider.MethodParameters>
                <x:Type TypeName="StyleAlias:EffectStyle"/>
            </ObjectDataProvider.MethodParameters>
        </ObjectDataProvider>
    </Window.Resources>
    <Grid>
        <ComboBox ItemsSource="{Binding Source={StaticResource dataFromEnum}}"
                  SelectedItem="{Binding Path=CurrentEffectStyle}" />
    </Grid>
</Window>

Bir sonraki kod üzerinde dikkat çekmek:

xmlns:System="clr-namespace:System;assembly=mscorlib"
xmlns:StyleAlias="clr-namespace:Motion.VideoEffects"

Göster ad ve montaj için MSDN okumak rehberi.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • FlippinWindows | #1 Windows Tutorial Channel!

    FlippinWindo

    23 Mayıs 2010
  • Simon Hayter

    Simon Hayter

    20 HAZİRAN 2010
  • wafflepwn

    wafflepwn

    14 AĞUSTOS 2008