我想更改我在Outlook的自定义Ui元素中使用的标签的text属性。但我得到转储:“对象引用未设置为对象的实例。”在此行CustomUI.set_lbl_txt =“Text”; 。如果有人有线索我就会用尽我的想法:)。
//Main class
public partial class ThisAddIn
{
public Microsoft.Office.Tools.CustomTaskPane mycustomPane;
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
UI CustomUI = new UI (); //The Ui element I want to customize
CustomUI.set_lbl_txt = "Text";
}
{
//This is the class of the UI element
public partial class UI : UserControl
{
public string set_lbl_txt
{
get { return lbl_text.Text; }
set {
//lbl_text = my label
lbl_text.Text = value;
}
}
答案 0 :(得分:1)
你的UI类中有构造函数吗?如果你不这样做,那就会发生错误。这对我有用。
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
UI CustomUI = new UI();
CustomUI.set_lbl_txt = "Text";
}
}
public partial class UI : UserControl
{
public UI()
{
InitializeComponent();
}
public string set_lbl_txt
{
get { return lbl_text.Text; }
set
{
lbl_text.Text = value;
}
}
}
答案 1 :(得分:0)
好的,我好像已经解决了这个问题。
第一个问题是我从来没有(像mrsargent所说)初始化我的表格也是我的setter错了所以我添加了一个变量和一个方法来应用我的更改。
public string txt_name;
public void setValues()
{
lbl_text.Text = txt_name;
}
public string set_lbl_text
{
get { return lbl_Task_text.Text; }
set {
this.txt_name = value;
}
}
所有人都在帮忙!