Я хочу добавить кнопки на определенные контекстные ленты... В частности:
Modify | Multi-Select
, Modify | Pipes
, Modify | Sprinklers
, Modify | Pipe Accessories
, Modify | Pipe Fittings
, Modify | Mechanical Equipment
и Modify | Generic Models
и поместите кнопки на созданную мной панель. Как я могу это сделать?
Я пробовал:
if (pTab.Id == "Modify | Pipes")
{
foreach (var pPanel in pTab.Panels)
{
if (pPanel.Source.Id == "Edit") //Also tried edit_shr
{// Add button.
pIcon = Properties.Resources.AS_Revit_UI_hydraulicParameters_icon.GetHbitmap();
var pBtn = new Autodesk.Windows.RibbonButton()
{
Name = "Hydraulic Parameters",
Image = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(pIcon, IntPtr.Zero, System.Windows.Int32Rect.Empty, BitmapSizeOptions.FromWidthAndHeight(32, 32)),
Id = "id_hydParam",
AllowInStatusBar = true,
AllowInToolBar = true,
GroupLocation = Autodesk.Private.Windows.RibbonItemGroupLocation.Middle,
MinHeight = 0,
MinWidth = 0,
Height = 32,
Width = 32,
IsEnabled = true,
IsVisible = true,
IsCheckable = true,
ShowImage = true,
ShowText = true,
Orientation = System.Windows.Controls.Orientation.Vertical,
Text = "Hydraulic Parameters",
Size = Autodesk.Windows.RibbonItemSize.Large,
ResizeStyle = Autodesk.Windows.RibbonItemResizeStyles.HideText
};
pPanel.Source.Items.Add(pBtn);
//Add event handler for button push
}
}
}
Это, к сожалению, не сработало. Я уверен, что это возможно - я просто не знаю, как это сделать. Я чувствую, что дело в том, что я не знаю имен вкладок, выдаваемых Revit, например, Modify | Pipes
на самом деле что-то вроде modify_pipes
или что-то в этом роде. В приведенном выше коде я пытался поместить свою кнопку на панель Revit... Есть ли способ добавить свою собственную панель с собственными кнопками? Что-то вроде этого:
Это идеальная ситуация. Меня более чем устраивают любые другие решения, такие как добавление кнопок на существующие панели. Любая помощь - хорошая помощь! Спасибо!!