PDA

View Full Version : حذف ContentControl در Word



niloo17
یک شنبه 14 تیر 1394, 17:47 عصر
سلام دوستان
من در برنامه یک فایل Template word دارم که دارای چندین ContentControl می باشد.
در هنگام نمایش فایل به کاربر مقدارهای ContentControl ها از دیتابیس خوانده می شود و درون ContentControl مورد نظر قرار می گیرد سپس فایل با فرمت pdf ذخیره می شه و به کاربر نمایش داده می شه .
مشکل اینجاست زمانی که کاربر مقداری وارد نکرده باشد ContentControl باید حذف شود.
من از کد زیر برای حذف استفاده می کنم و ContentControl مورد نظر حذف می شود مشکل اینجاست که با حدف آن یک خط خالی ایجاد می شود .
چه جوری می تونم اون خط خالی را در فایل پاک کنم.


Object oMissing = System.Reflection.Missing.Value;
var oWord = new Application();
var oWordDoc = new Document();
Object oTemplatePath = Server.MapPath("~/DietTemplate/" + template.FileName);
oWordDoc = oWord.Documents.Add(ref oTemplatePath, ref oMissing, ref oMissing, ref oMissing);
foreach (ContentControl content in oWordDoc.ContentControls)
{
var field = fieldlist.Where(e => e.DietFields.Name == content.Title);
if (field.Single().Value != null)
content.Range.Text = field.Single().Value;
else
{
content.Delete(true);
}