Uygulamamda, Visual Studio 2008 tarafından sunulanlar gibi özelleştirilebilir araç çubukları kullanmak istiyorum (araç çubuğuna sağ tıklayın, özelleştirin). Bir WPF çözümüne ihtiyacım var ve hiçbirini bulamadım (SO veya Google'da). Bunu, Microsoft'un bile yapmakta zorluk çektiğini ima eden bu Visual Studio 2010 blog entry'u buldum. Her neyse, basit tutmak gerekirse, soru şu ki, bu işlevselliği sağlayan herhangi bir açık kaynak/serbest çerçeve var (VS2008'in çözümünün tam kopyası olmak zorunda değil).WPF içinde Özelleştirilebilir Araç Çubuğu
cevap
Sadece biraz uğraştım ve WPF ile tek başına istenen davranışı uygulamak nispeten kolay olmalı (ek kütüphane veya çerçeve gerekli değildir). Button
'u ToolBar
'a eklemek için örnek kod ekledim, bu da araç çubuğuna daha fazla düğme eklemeyi sağlar.
İstediğiniz davranışı elde etmek için araç çubuğu için bir düğmeler ve kullanılabilir düğmeleri olan başka bir koleksiyona sahip olurdum. ItemsSource
araç çubukları ilk koleksiyona bağlı olacaktır. Bağlam menüsünde "özelleştirme" düğmesine tıkladıktan sonra, iki koleksiyon ile birlikte ListViews
(koleksiyonların her birine bağlı) ve düğmelerin tam koleksiyonundaki/düğmelerinden eklemek/kaldırmak için başka bir form göstereceğim. HTH.
Kodu:
public ObservableCollection<Button> Buttons { get; set; }
public MainWindow()
{
InitializeComponent();
Buttons = new ObservableCollection<Button>();
AddButton();
DataContext = this;
}
private void ButtonAddButton_Click(object sender, RoutedEventArgs e)
{
AddButton();
}
private void AddButton()
{
var button = new Button();
button.Content = "Add Button (" + Buttons.Count + ")";
button.Click += ButtonAddButton_Click;
Buttons.Add(button);
}
XAML: Araç çubuğu tepsiye bir içerik menüsü eklemek veya dinamik simgeler ekleyin ve komutlarını nasıl bilmek isteyen nasıl hakkında sorun
<Grid>
<ToolBarTray>
<ToolBar ItemsSource="{Binding Buttons}">
<ToolBar.ContextMenu>
<ContextMenu>
<MenuItem Header="Customize" />
</ContextMenu>
</ToolBar.ContextMenu>
</ToolBar>
</ToolBarTray>
</Grid>
Bu olağanüstü bir cevaptır. –
Bir ToolBar bir ItemsControl olduğu için, istediğiniz şeyi elde etmek için sürükle ve bırak çerçevelerini kullanmayı deneyebilirsiniz.
http://bea.stollnitz.com/blog/?p=53
Bu veriyle öğe işlemek için harika bir çözüm. ToolBar öğelerinizi göstermek için veri bağlama kullanmıyorsanız, kodu biraz özelleştirmeniz gerekecektir (veri bağlama özelliğini kullanmanızı öneririm, ancak özelleştirmeleri kaydetmeyi çok daha kolay hale getirecektir).
Uygulamanızda "özelleştir" düğmesine bastığınızda, kullanılabilir öğeler içeren bir ListBox'ı açabilirsiniz (yukarıdaki çözümün çalışması için aynı pencerede olmalıdır) ve ToolBars ve ListBox'taki sürükle ve bırak işlevini etkinleştirebilirsiniz. ilişikteki özelliği kullanarak.
- 1. WPF: bir araç çubuğu
- 2. Araç çubuğu
- 3. Raylar içinde CKEditor'a özel araç çubuğu ekleyin
- 4. openoffice java içinde Karmaşık araç çubuğu
- 5. WPF Araç Çubuğu: tutuş nasıl kaldırılır (soldaki noktalar)
- 6. WPF Resim Araç İpucu
- 7. Daraltılabilir Araç Çubuğu: Araç çubuğunun onCreate
- 8. DialogFragment aracında Araç Çubuğu
- 9. Android Araç Çubuğu,
- 10. Üstte UIPopoverController araç çubuğu
- 11. Sadece açık araç çubuğu
- 12. CKEditor - Araç çubuğu yok
- 13. Uygulandığında çöktü Araç Çubuğu
- 14. Android Studio Araç Çubuğu, Action Çubuğu olarak
- 15. Daraltma araç çubuğu düzeni durum çubuğu sorunu
- 16. Araç İpucu Yerleşimi - WPF
- 17. WPF Araç ipucu konumlandırma
- 18. Çökebilir araç çubuğu, içinde geri dönüştürücü görüntülendiğinde düzgün şekilde çökmüyor
- 19. Dikey kaydırma çubuğu, WPF
- 20. Araç Çubuğu - findViewbyID dönen null
- 21. Daraltma Araç Çubuğu efekti Tablayout
- 22. Android Spinner Araç Çubuğu stili
- 23. Android Araç Çubuğu İçeriği İçeren
- 24. jqGrid geçiş filtresi araç çubuğu
- 25. Araç Çubuğu - yukarı düğmesini ekleyin
- 26. Araç Çubuğu saklanmıyor RecyclerGörüntü kaydırma
- 27. CKEditor Özel Araç Çubuğu Tanımlama
- 28. değiştirme araç çubuğu teması programlı
- 29. CKEditor inline araç çubuğu konumu
- 30. Etkinliğe araç çubuğu ekleniyor NoClassDefFoundError
mi kullanıcı tercihlerine göre araç çubuğu? –
İkincisi, ve bunu gerçekten sıfırdan uygulamakla ilgilenmiyorum, nasıl yapılacağını biliyorum, bana biraz/en çok iş yükleyen bir çeşit çerçeve ile ilgileniyorum. – Ivan