Ich bin neu zu Blend und WPF und ich möchte ein Steuerelement, das ListBox-Eigenschaften, aber mit meinen eigenen benutzerdefinierten Elementen hat. Grundsätzlich möchte ich, dass jedes Element ein abgerundetes Rechteck mit einem Label ist. Der erste Weg, den ich dachte, war mit einem UserControl und StackPanel, obwohl ich nicht daran denken konnte, dem Programm mitzuteilen, welches Objekt (e) den Fokus hat. Aus diesem Grund dachte ich, dass ich eine ListBox verwenden und damit ein benutzerdefiniertes ListBoxItem erstellen könnte, aber offensichtlich konnte nur das Rechteck in das Steuerelement konvertiert werden, wodurch die Beschriftung verloren ging. Alle Zeiger wären eine große Hilfe.So erstellen Sie eine benutzerdefinierte Liste in Blend
0
A
Antwort
0
Sie können eine ListBox verwenden und sind nicht nur auf das Rechteck und nicht auf die Beschriftung beschränkt.
Verwenden Sie eine Standard-ListBox, und machen Sie ListBox.ItemTemplate so komplex, wie Sie möchten. Wenn Sie eine Reihe von Steuerelementen übereinander legen müssen, können Sie mit einem Canvas- oder Rastersteuerelement beginnen und von dort aus fortfahren.
Alternativ können Sie die Elementvorlage auch mit einem einzelnen Label-Steuerelement versehen (wenn sich das Element logisch wie ein Label verhält) und eine ControlTemplate verwenden, um den für diese Labels gerenderten visuellen Baum vollständig wiederherzustellen.
Referenzen:
Hier ist ein kurzes Beispiel.
XAML:
<Grid>
<ListView ItemsSource="{Binding Path=Labels}">
<ListView.ItemTemplate>
<DataTemplate>
<Grid>
<Rectangle Fill="CadetBlue" RadiusX="10" RadiusY="10" SnapsToDevicePixels="True">
</Rectangle>
<Label Content="{Binding}" Padding="10"/>
</Grid>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</Grid>
Der "Ansichtsmodell":
public IEnumerable<string> Labels
{
get { return new string[] { "Foo", "Bar", "Baz" }; }
}
Und das Ergebnis:
Verwandte Themen
- 1. So erstellen Sie eine benutzerdefinierte Basiskalenderansicht
- 2. So erstellen Sie eine benutzerdefinierte WordPress-Kategorieseite
- 3. So erstellen Sie eine Liste von Wörterbüchern
- 4. So erstellen Sie eine automatische Scrolling-Liste
- 5. So erstellen Sie benutzerdefinierte Benutzerrolle in Wordpress
- 6. So erstellen Sie benutzerdefinierte Benachrichtigung in Android
- 7. So erstellen Sie benutzerdefinierte Anweisungen in Sphinx
- 8. So erhalten Sie eine benutzerdefinierte Liste in einem Viewset
- 9. So erstellen Sie benutzerdefinierte Abschlussblock in Swift
- 10. So erstellen Sie benutzerdefinierte Ausnahmen in Java?
- 11. So erstellen Sie benutzerdefinierte Ansichten in Xamarin
- 12. So erstellen Sie benutzerdefinierte Ereignisse in symfony2
- 13. So erstellen Sie benutzerdefinierte Funktionen in SQLite
- 14. So erstellen Sie benutzerdefinierte CFRunLoopRef in iPhone
- 15. So erstellen Sie eine benutzerdefinierte Jahre für DateTime in C#
- 16. So erstellen Sie eine benutzerdefinierte Tastenkombination in Android Studio
- 17. So erstellen Sie eine benutzerdefinierte Design-Website in salesfoce
- 18. So erstellen Sie eine benutzerdefinierte YAML-Konfigurationsdatei in Symfony
- 19. So erstellen Sie eine benutzerdefinierte "Navigations" -Seitenleiste in Android
- 20. So erstellen Sie eine benutzerdefinierte Validierungsregel in Kuchen 3
- 21. So erstellen Sie eine vollständige benutzerdefinierte Seite in Prestashop 1.6
- 22. So erstellen Sie eine benutzerdefinierte UIAlertView in iPhone App
- 23. So erstellen Sie eine benutzerdefinierte Freigabe Schaltfläche in Facebook SDK
- 24. NetSuite Erstellen Sie eine benutzerdefinierte Liste von benutzerdefinierten Typ
- 25. Erstellen Sie eine benutzerdefinierte UINavigationcontrollerklasse
- 26. So sortieren Sie eine benutzerdefinierte Liste mit Priorität (String) Android
- 27. So erstellen Sie eine flache Kopie einer Liste in Python
- 28. So erstellen Sie eine Liste mit anklickbaren ID in Javascript
- 29. So erstellen Sie eine Liste von Feldern in Django-Formularen
- 30. So erstellen Sie eine alphabetische Liste in xslt