翻譯|使用教程|編輯:況魚杰|2019-06-25 14:42:42.297|閱讀 296 次
概述:本文介紹如何采用強大的擴展方法,把給定的用戶名中所有文本部分的跟蹤更改刪除。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
TX Text Control .NET for Windows Forms 是一套功能豐富的文字處理控件,它以可重復使用控件的形式為開發人員提供了Word中常用的文字處理功能,對于需要強大且靈活的文檔處理能力的應用程序而言,是理想的選擇。
點擊下載最新版TX Text Control .NET for Windows Forms
在TX Text Control中,可以通過用戶文檔中的跟蹤更改來啟用文檔協作。 這種方式表示任何人修改文件都會對文檔做出改變。拒絕和接受跟蹤的變更都需要使用TXTextControl.TrackedChangeCollection.Remove方法從TXTextControl.TrackedChangeCollection中刪除特定更改。有時,需要通過給定的用戶名從整個文檔中刪除所有更改。實現這種效果有兩種擴展方法。擴展方法使您可以向現有類添加其他功能。
以下擴展方法從TrackedChangeCollection中刪除所有更改或從所有TextPart中刪除所有更改:
namespace TrackedChangeCollectionExtensions
{
public static class TrackedChangeCollectionExtensions
{
// removes all changes in the TrackedChangeCollection with a given username
public static int RemoveAll(
this TXTextControl.TrackedChangeCollection trackdChangeCollection,
string username, bool accept)
{
List myTrackedChanges = new List();
// loop through all changes
foreach (TXTextControl.TrackedChange trackedChange in trackdChangeCollection)
{
if (trackedChange.UserName == username)
myTrackedChanges.Add(trackedChange);
}
// delete all changes
foreach (TrackedChange listedTrackedChange in myTrackedChanges)
trackdChangeCollection.Remove(listedTrackedChange, true);
return myTrackedChanges.Count;
}
// removes all changes in all TextParts with a given username
public static int RemoveAllTrackedChanges(
this TXTextControl.TextPartCollection textPartCollection,
string username, bool accept)
{
// counter
var deletedTrackedChanges = 0;
// loop through all text parts
foreach (IFormattedText textPart in textPartCollection)
{
List myTrackedChanges = new List();
// loop through all changes
foreach (TXTextControl.TrackedChange trackedChange in textPart.TrackedChanges)
{
if (trackedChange.UserName == username)
myTrackedChanges.Add(trackedChange);
}
// delete all changes
foreach (TrackedChange listedTrackedChange in myTrackedChanges)
{
textPart.TrackedChanges.Remove(listedTrackedChange, true);
deletedTrackedChanges++;
}
}
return deletedTrackedChanges;
}
}
}例如:為了接受用戶development@devteam.com所做的所有更改,只需要輸入以下代碼:
var removedChanges = textControl1.TrackedChanges.RemoveAll("development@devteam.com", true);如果您需要拒絕所有文本部分中的所有更改,包括頁眉,頁腳,主文本和文本框架,可以使用以下調用:
var removedChanges = textControl1。TextParts。RemoveAllTrackedChanges(“ development@devteam.com ”,false);
這種方式是從TX Text Control .NET for Windows Forms X16 版本開始的,如果您還沒有下載相關版本,可以點擊下載最新版TX Text Control .NET for Windows Forms 。
Text Control GmbH公司的文檔處理控件功能強大,能幫助您輕松創建能與Microsoft Word功能媲美的應用程序。想要更輕松便捷的完成工作,可以點擊查看相關產品:TX Text Control ActiveX TX Text Control Server for ASP.NET (incl. WPF) TX Text Control .NET for WPF 。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@ke049m.cn