
Ergebnis 1 bis 5 von 5
-
Mich gibt's schon länger
- 22.04.2013, 10:11
- #1
Hallo Zusammen
Ich habe mir aus einem Beispiel von Microsoft ein Listpicker nachgebaut und in meinem App eingebaut. Nun habe ich das seltsame Verhalten dass das SelectionChanged Event direkt beim anklicken des Feldes ausgeführt wird, sprich noch bevor das sich das ListPicker Controll geöffnet hat. Dadurch wird zum einen das angezeigte ausgewählte Element nicht angepasst und zum anderen das SelectedItem nicht aktualisiert. Wenn ich nun nochmals drauf klicke bekomme ich die letzte Auswahl angezeigt. Das Problem tritt aber erst dann auf, wenn der Listpicker in den Vollbildmodus geht. Wenn er nur aufklappt setzt es das Selected Item korrekt.
Lustigerweise funktioniert es im Beispiel von Microsoft problemlos.
Das Projekt ist mit WP7 erstellt und später auf WP8 aktualisiert worden.
Listpicker Code:
Code:<toolkit:ListPicker Header="Color Picker" FullModeHeader="Select Color" Name="listPickerColor" VerticalAlignment="Center" SelectionChanged="listPickerColor_SelectionChanged"> <toolkit:ListPicker.ItemTemplate> <DataTemplate> <StackPanel Orientation="Horizontal"> <Rectangle Fill="{Binding ColorBrush}" Margin="2, 2, 0 0" Width="26" Height="26" /> <TextBlock Text="{Binding Text}" Margin="4 0 0 0"/> </StackPanel> </DataTemplate> </toolkit:ListPicker.ItemTemplate> <toolkit:ListPicker.FullModeItemTemplate> <DataTemplate> <StackPanel Orientation="Horizontal" Margin="16 21 0 20"> <Rectangle Fill="{Binding ColorBrush}" Margin="2, 2, 0 0" Width="26" Height="26" /> <TextBlock Text="{Binding Text}" Margin="4 0 0 0" FontSize="43" FontFamily="{StaticResource PhoneFontFamilyLight}"/> </StackPanel> </DataTemplate> </toolkit:ListPicker.FullModeItemTemplate> </toolkit:ListPicker>
Code:protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e) { var colors = new List<ColorSelectModel>(); var accentColor = (Color)Resources["PhoneAccentColor"]; colors.Add(new ColorSelectModel("Accent Color", accentColor)); colors.AddRange( typeof(Colors).GetProperties(BindingFlags.Static | BindingFlags.Public) .Where(p => p.PropertyType == typeof(Color)) .Where(p => p.Name != "Transperant" && p.Name != "Black") .Select(p => new ColorSelectModel(p.Name, (Color)p.GetValue(typeof(Colors), null)))); listPickerColor.ItemsSource = listPickerColor.ItemsSource ?? new ObservableCollection<ColorSelectModel>(colors); } private void listPickerColor_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e) { ColorSelectModel item = listPickerColor.SelectedItem as ColorSelectModel; }
Code:public class ColorSelectModel { public ColorSelectModel(string text, Color color) { this.Text = text; this.Color = color; this.ColorBrush = new SolidColorBrush(color); } public string Text { get; set; } public Color Color { get; set; } public SolidColorBrush ColorBrush { get; set; } }
-
- 22.04.2013, 17:34
- #2
Welches Beispiel meinst Du?
-
entwickelt Apps
- 22.04.2013, 17:38
- #3
Dieses hier:
Code Sample
Wie gesagt, wenn ich das Codebeispiel nehme klappt es problemlos. Ebenfalls wenn ich es WP8 update. Aber in meinem Projekt will es irgendwie nicht so wie es soll. Das ist aber auch der Fall wenn ich ein ganz frisches Listpicker Controll nehme und eine eigene Collection dran hänge.
Gruss
Nino
-
- 22.04.2013, 18:30
- #4
Hm, ich habe mal den sample und deins ausprobiert, funktioniert beides identisch.
Sehe da jetzt noch keinen Fehler, habe deinen Code Snipped in ein neues WP8 Projekt kopiert und im SelectionChanged Event
noch die Zeile this.HeaderTextBlock.Foreground = item.ColorBrush; zum testen. Ohne Probleme
Das Event wird zwar beim Laden 2x geschossen, aber beim ausführen nur einmal.
-
entwickelt Apps
- 22.04.2013, 19:11
- #5
Das ist ja das seltsame o.O
Das Toolkit habe ich über nuget eingebunden. Version ist: 'WPtoolkit 4.2012.10.30'
---------- Hinzugefügt um 20:11 ---------- Vorheriger Beitrag war um 19:51 ----------
Ich habe es zwar immernoch nicht rausgefunden was hier schief läuft, aber ich verwende jetzt das Telerik Framework auch für diesen Teil. Ich nutze dieses bereits an anderen Stellen. Dann macht es wohl Sinn dieses überall einzusetzten und mich dem invalid XAML Fehler anzunehmen der dort auftritt ^^
Danke trotzdem für die Hilfe
Ähnliche Themen
-
pdf wird falsch angezeigt
Von Trainer im Forum Android AppsAntworten: 1Letzter Beitrag: 17.02.2011, 01:16 -
Geburtstag wird falsch angezeigt in Kontakten?
Von juelu im Forum Google Nexus OneAntworten: 5Letzter Beitrag: 02.02.2011, 10:08 -
Termin (Uhrzeit) wird falsch gesendet
Von griesu299 im Forum HTC HD2 SonstigesAntworten: 1Letzter Beitrag: 23.09.2010, 04:44 -
Wetter wird ständig aktualisiert...
Von Unregistriert im Forum Samsung Omnia IIAntworten: 5Letzter Beitrag: 23.11.2009, 08:50 -
Uhrzeit wird falsch angezeigt
Von vygi im Forum SE Xperia X1Antworten: 1Letzter Beitrag: 31.10.2008, 09:35
Pixel 10 Serie mit Problemen:...