私はWPF Officeリボンを使用しています。そのビューがアクティブになったときにリボンに新しいアイテムを追加したいコンテンツビューがあります。新しいRibbonCommandと新しいRibbonButtonを必要なグループに追加するコードがありますが、追加すると何も起こりません。ただし、ボタンを使って新しいグループを追加すると、正常に表示され、正しくバインドされます。それが私が行方不明に更新するためにいくつかの方法がありますか?私はUpdateLayout()を試してみましたが、どちらもうまくいきません。私は本当にビューを変更するたびにすべてのグループを再構築しないようにしたいと思います。コードを使用してWPFリボンに新しいアイテムを追加する
作品:
public void InjectItems(IView view)
{
var ribbonCommands = ProcessRibbonCommands(view.GetViewModel().Tasks, view.GetType());
var group = new RibbonGroup();
group.Command = new RibbonCommand() { LabelTitle = "Group Test" };
foreach (RibbonCommand command in ribbonCommands)
{
shell.MainRibbon.Resources.Add(command.Name, command);
group.Controls.Add(new RibbonButton { Command = command });
}
shell.MainRibbon.SelectedTab.Groups.Add(group);
}
は動作しません。
public void InjectItems(IView view)
{
var ribbonCommands = ProcessRibbonCommands(view.GetViewModel().Tasks, view.GetType());
var group = shell.MainRibbon.SelectedTab.Groups[0]; //I have a default group, will fix later
foreach (RibbonCommand command in ribbonCommands)
{
shell.MainRibbon.Resources.Add(command.Name, command);
group.Controls.Add(new RibbonButton { Command = command });
}
}
あなたはこれを理解しましたか?私は同じ問題を抱えていますし、コードを使って既存のグループに新しい項目を追加することもできません。 –