Я написал программу Windows Forms, используя C#. Он содержит текстовые поля и сетку данных.
Я хочу экспортировать данные в файл Word, чтобы использовать шаблон. Я добавил в свой код библиотеку Microsoft Word.
Также я создал текстовые поля «фигуры» внутри файла Word и поместил в них текст, который нужно найти из моей программы С#.
На данный момент все кажется в порядке, но я застрял на стороне C#, я могу заменить обычный текст, но не текст внутри текстовых полей "Внутри файла слова"
И вот мой код:
private void FindAndReplace(Word.Application wordapp, object ToFindText, object replaceWithText)
{
object matchCase = true;
object matchWholeWord = true;
object matchWildCards = false;
object matchSoundLike = false;
object matchAllforms = false;
object forward = true;
object format = false;
object matchKashida = false;
object matchDiactitics = false;
object matchAlefHamza = false;
object matchControl = false;
object matchread_only = false;
object visible = true;
object replace = 2;
object wrap = 1;
wordapp.Selection.Find.Execute(ref ToFindText,
ref matchCase, ref matchWholeWord,
ref matchWildCards, ref matchSoundLike,
ref matchAllforms, ref forward,
ref wrap, ref format, ref replaceWithText,
ref replace, ref matchKashida,
ref matchDiactitics, ref matchAlefHamza,
ref matchControl);
}
private void CreateWordDocument(object filename, object SaveAs)
{
Word.Application wordApp = new Word.Application();
object missing = Missing.Value;
Word.Document myWordDoc = null;
if (File.Exists((string)filename))
{
object readOnly = false;
object isVisible = false;
wordApp.Visible = false;
myWordDoc = wordApp.Documents.Open(ref filename, ref missing, ref readOnly,
ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing);
myWordDoc.Activate();
//find and replave
this.FindAndReplace(wordApp, "<date1>", textBox2.Text);
this.FindAndReplace(wordApp, "<date2>", textBox3.Text);
}
else
{
MessageBox.Show("File not found!");
}
//Svae as
myWordDoc.SaveAs2(ref SaveAs, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing);
myWordDoc.Close();
wordApp.Quit();
MessageBox.Show("File Created!");
}