问题的根本原因是在新版本的Visual Studio中,使用VSTO创建Ribbon控制时出现了一些兼容性问题。为解决此问题,请按照以下步骤进行操作:
1.导入Microsoft.Office.Tools.Ribbon.v4.0和Microsoft.Office.Tools.v4.0.Utilities.dll这两个库。
2.确保您已正确设置了Ribbon控件的命名空间。
3.检查您的'Solution Explorer”窗口,确保所有VSTO项目都已打开。如果有任何项目未打开,请先打开。
4.在Excel中单击'文件”-'选项”-'加载项”-'管理”-'Excel加载项”.在弹出窗口中,确保VSTO加载项处于已选状态,并选择'始终启动此加载项”选项。
5.重新启动Excel应用程序。
6.现在,您应该可以看到Ribbon控件在设计器中出现。
代码示例:
namespace RibbonScrollBar
{
public partial class Ribbon2 : RibbonBase
{
public Ribbon2()
{
InitializeComponent();
}
private void Ribbon2_Load(object sender, RibbonUIEventArgs e)
{
}
// Add new scrollbar
private void comboBox1_TextChanged(object sender, RibbonControlEventArgs e)
{
int max = 100;
int val;
if (!int.TryParse(comboBox1.Text, out val)) val = max / 2;
if (val > max) val = max;
if (val < 0) val = 0;
scrollBar1.Maximum = max;
scrollBar1.Value = val;
}
// Adjust scroll position
private void scrollBar1_Scroll(object sender, ScrollEventArgs e)
{
label1.Label = e.NewValue.ToString();
}
private void button1_Click(object sender, RibbonControlEventArgs e)
{
}
}
}