منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : كود في طريقه حفظ الملفات بامتداد مختار من الفلتر
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم اخواني في منتدى فيجوال بيسك ارجو منكم المساعده في كود نافذه حوار حفظ SaveFileDialog 
وهذا السؤل بالذات في خاصيه الفيلتر Filter وهو كيف اعرف الفيلتر او الامتداد الذي قام المستخدم باختياره كي اتمكن من تطبيق كود في حاله ان المستخدم اختار كذا او كذا باستخدام الاداه if او غيرها
وانا معي في برنامجي فلتررين txt و rtf وفي حاله مثلا ان المستخدم اختار rtf اقوم باضافه الامتادا الى اسم الملف الذي يريد حفضه ام ياترى توجد طريقه اخرى لفعل ذالك 
ارجو ان تكونو كما عهدناكم في الاجابه
وساكون شاكرن تعاونكم
استخدم FilterIndex


SaveFileDialog1.Filter = "مستند نصى (.txt)|*.txt|ملف ورد (.rtf )|*.rtf"
SaveFileDialog1.Title = "حفظ ملف نصى"
SaveFileDialog1.ShowDialog()

If SaveFileDialog1.FilterIndex = 1 Then
MessageBox.Show("txt")
End If

If SaveFileDialog1.FilterIndex = 2 Then
MessageBox.Show("rtf")
End If
شكرا  لك على تعاونك ولاكني قمت بتجربه الفيلتر انديكس قبل ان قوم بطرح هذا السؤل ولاكن قيمه الفيلتر انديكس لا تتغير مع تغير نوع الفلتر
اذا فهمت قصدك جيدا  فهناك طريقتين :
الأولى: تضيف اكثر من امتداد لمربع حوار الحفظ و بعد اختيار الملف تختار الامتداد المناسب لك.
الثانية: انك تضع شرط قبل حفظ الملف النصي من ضمن خيارات متعددة  و تحدد الامتداد قبل القيام بعملية الحفظ
كود :
Dim s As New SaveFileDialog
       If s.ShowDialog = Windows.Forms.DialogResult.OK Then
           MsgBox(IO.Path.GetExtension(s.FileName))
       End If
اذا فهمي صحيح فالكود  اعلاه هو مطلبك.