PDA

View Full Version : مبتدی: خالی شدن richtextbox هنگام پرینت گرفتن



ahrimaneahurai
چهارشنبه 01 دی 1389, 14:24 عصر
سلام
من از کد زیر برای پرینت گرفتن richtextbox استفاده می کنم

PrintDialog pd=new PrintDialog();
if (pd.ShowDialog() == true)
{
pd.PrintDocument((((IDocumentPaginatorSource)Conte ntText.Document).DocumentPaginator), "Print");
}مشکلم اینه که وقتی پنجره پرینت باز میشه محتویات richtextbox خالی میشه
مشکل از کد من هست یا اینکه نه ؟
کد دیگه ای سراغ دارید که این مشکل رو نداشته باشه ؟
ممنون دوستان

مهدی فرزاد
چهارشنبه 01 دی 1389, 14:42 عصر
سلام
بجای pd.PrintDocument

بنویس

pd.PrintVisual(ContentText as Visual, "Print Visual");

این لینک رو نگاه کن تمام توضیحات رو برای این کنترل داده و کامله
http://msdn.microsoft.com/en-us/library/aa970779.aspx

ahrimaneahurai
چهارشنبه 01 دی 1389, 17:26 عصر
دوست عزیز خیلی دستت درد نکنه
فکر کنم تو این بخش wpf فقط شما جواب میدی
ممنون

ahrimaneahurai
چهارشنبه 01 دی 1389, 17:38 عصر
دوست عزیز باید یکی از 2 خطی که شما نوشته بودید نوشته شه(برای دوستانی می گم که بعدا مراجعه می کنن)
یا این کد :

pd.PrintVisual(ContentText as Visual, "Print Visual");

یا این کد

pd.PrintDocument((((IDocumentPaginatorSource)Conte ntText.Document).DocumentPaginator), "Print");
اما خط اول مشکل من رو حل کرد. هر 2 خط پرینت می کنه اما خط اول محتوای من رو خالی نمی کنه.

مهدی فرزاد
چهارشنبه 01 دی 1389, 22:23 عصر
سلام
بله نکته که شما گفتید درسته و این نکته رو اضافه کنم کد اول خود RichTextBox رو با تمام خصوصیت ظاهریش چاپ میکنه
شما میتونید اون FlowDocument رو که به RichTextBox فرستادید اگر با تمام اطلاعات درون RichTextBox همخونی داره ،بوسیله کد دوم چاپ کنید (البته من تست نکردم این یک پیشنهاده)