Ошибка CS1061 говорит, что строка не содержит определения

#c#

#c#

Вопрос:

Этот код C # выдает мне сообщение об ошибке, что строка не содержит определения для AddItem. Я пытался добавить другой идентификатор, но я не знаю, какой именно.

C#:

 const string RIBBON_TAB = "HILLAM TAB";
const string RIBBON_PANEL = "Ribbon button";

public object ToolTip {
    get;
    private set;
}

public BitmapSource Png {
    get;
    private set;
}

// Both OnStartup and OnShutdown must be implemented as public method
public Result OnStartup(UIControlledApplication a) {

    //get the ribbon tab
    try {
        a.CreateRibbonTab(RIBBON_TAB);
    }

    catch(Exception) {} //tab already exists
    // Add a new ribbon panel
    RibbonPanel panel = null;
    List < RibbonPanel > panels = a.GetRibbonPanels(RIBBON_TAB);
    foreach(RibbonPanel pnl in panels) {
        if (pnl.Name == RIBBON_PANEL) {
            panel = pnl;
            break;
        }
    }
    if (panel == null) {
        panel = a.CreateRibbonPanel(RIBBON_TAB, RIBBON_PANEL);
    }

    // Create a push button to trigger a command add it to the ribbon panel.
    string thisAssemblyPath = Assembly.GetExecutingAssembly().Location;
    PushButtonData buttonData = new PushButtonData("cmdHelloWorld", "Hello World", thisAssemblyPath, "RevitAddin1.HelloWorld");
    PushButton pushButton = RIBBON_PANEL.AddItem(buttonData) as PushButton;

    // Optionally, other properties may be assigned to the button
    // a) tool-tip
    pushButton.ToolTip = "Say hello world.";
  

Я ожидаю нажать на панель, и откроется новое окно с сообщением: «Скажи привет, мир».

Комментарии:

1. Попробуйте изменить RIBBON_PANEL.AddItem на panel.AddItem .

2. Привет Idle_Mind. Спасибо за ваше предложение. Это немного помогло, так как ошибка исчезла, но моя панель вкладок переместилась в неправильное место на ленте. Я хотел, чтобы инструмент находился под HILLAM_TAB, но он перешел на вкладку Внешние инструменты хм, есть идеи, почему?

3. Я понятия не имею. Я просто проанализировал ваш пост и вывел, какую переменную вам нужно использовать, на основе кода и его комментариев. Я вообще не знаком с тем, что вы делаете.