[英]An Explicit conversion exists when working with word in C#
此代碼獲取活動檢查器 window 即撰寫郵件 window 並執行搜索並替換 ZC1C425268E68385D1AB5074C17A94EBF14Z 為 Z07483F5ABC2736 的正文。
但我收到一個錯誤:
無法將類型“對象”隱式轉換為“Microsoft.Office.Interop.Word.Range”。 存在顯式轉換(您是否缺少演員表?)
代碼在這里供您參考..
private void button1_Click(object sender, RibbonControlEventArgs e)
{
Outlook.Inspector uiInspector = Globals.ThisAddIn.Application.ActiveInspector();
object uiObject = uiInspector.CurrentItem;
if (uiObject is Outlook.MailItem && uiInspector.IsWordMail())
{
Outlook.MailItem uiItem = (Outlook.MailItem)uiObject;
Word.Document uiDoc = uiInspector.WordEditor as Word.Document;
if (uiDoc != null)
{
***Word.Find uiFind = uiDoc.Range().Find;***
uiFind.Text = "ASA^$^$^#^#^#^#^#";
while (uiFind.Execute())
{
Microsoft.Office.Interop.Word.Range rng = uiFind.Parent;
rng.Hyperlinks.Add(rng, "http://stack.com=" + rng.Text + "outlook2007");
rng.Collapse(Word.WdCollapseDirection.wdCollapseEnd);
}
}
}
}
我該如何糾正這個錯誤?
您需要轉換此行:
Microsoft.Office.Interop.Word.Range rng = uiFind.Parent;
至
var rng = uiFind.Parent as Microsoft.Office.Interop.Word.Range;
嘗試
Microsoft.Office.Interop.Word.Range rng = (Microsoft.Office.Interop.Word.Range)uiFind.Parent;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.