ফাইল ডায়লগ খুলুন এবং ডাব্লুপিএফ নিয়ন্ত্রণ এবং সি # ব্যবহার করে একটি ফাইল নির্বাচন করুন


189

আমার একটি TextBoxনাম textbox1এবং একটি Buttonনাম আছে button1। আমি যখন ক্লিক করি তখন আমি button1কেবলমাত্র ফাইলের জন্য অনুসন্ধান করতে আমার ফাইলগুলি ব্রাউজ করতে চাই (টাইপ জেপিজি, পিএনজি, বিএমপি ...)। এবং আমি যখন কোনও চিত্র ফাইলটি নির্বাচন করি এবং ফাইল সংলাপে ওকে ক্লিক করি তখন আমি ফাইল ডিরেক্টরিটি textbox1.textএভাবে লেখা উচিত :

textbox1.Text = "C:\myfolder\myimage.jpg"

উত্তর:


439

এর মতো কিছু আপনার প্রয়োজন অনুসারে হওয়া উচিত

private void button1_Click(object sender, RoutedEventArgs e)
{
    // Create OpenFileDialog 
    Microsoft.Win32.OpenFileDialog dlg = new Microsoft.Win32.OpenFileDialog();



    // Set filter for file extension and default file extension 
    dlg.DefaultExt = ".png";
    dlg.Filter = "JPEG Files (*.jpeg)|*.jpeg|PNG Files (*.png)|*.png|JPG Files (*.jpg)|*.jpg|GIF Files (*.gif)|*.gif"; 


    // Display OpenFileDialog by calling ShowDialog method 
    Nullable<bool> result = dlg.ShowDialog();


    // Get the selected file name and display in a TextBox 
    if (result == true)
    {
        // Open document 
        string filename = dlg.FileName;
        textBox1.Text = filename;
    }
}

20
যদি (ফলাফল.হ্যাসভ্যালু ও& ফলাফল.ভ্যালু) এর পরিবর্তে যদি (ফলাফল == সত্য)
13

2
@efles মান আপনার ভাবে সরকারী নমুনা কোড উপর উপলব্ধ কি msdn.microsoft.com/en-us/library/... ?
ডার্ক বেস্টার

5
@Felles নমুনাটি প্রযুক্তিগতভাবে সঠিক। এমএসডিএন.মাইক্রোসফট.ইন- ইউএস / লিবারি / ২cf62fcy.aspx থেকে : আপনি যখন ন্যূনতম প্রকারের সাথে তুলনা করেন, তবে কোনও একধরণের নলের মান যদি নাল হয় এবং অন্যটি না হয়, সমস্ত তুলনাগুলি বাদে মিথ্যাতে মূল্যায়ন করে! = (সমান নয়) তবে আমি মনে করি এটি যুক্তিযুক্ত হতে পারে এটি এই প্রযুক্তিটির শোষণ কিনা (আমি ব্যক্তিগতভাবে মনে করি এটি এক্ষেত্রে ঠিক আছে)।
ওহাদ স্নাইডার

1
@ অবশ্যই টেরিবড! এক্সএএমএল-তে পাঠ্যবাক্সের সাথে আবদ্ধ সম্পত্তিটি কেবল আপডেট করুন, যেমনthis.FileName = filename
ওহাদ স্নাইডার

1
@ স্প্রোকটিবয় আপনাকে "বিশুদ্ধ bit৪ বিট ডেস্কটপ অ্যাপ্লিকেশন" বলতে কী বোঝাতে চাইছেন তা সম্পর্কে আমার সম্পূর্ণ বিভ্রান্তি স্বীকার করতে হবে; আপনি আরও ব্যাখ্যা করতে পারেন? আমার বোধগম্যতা হল Microsoft.Win32লাইব্রেরিগুলি অন্তর্নিহিত ওএসের একটি পরিচালিত এপিআই; ওএসের সাথে তারা কীভাবে কথা বলবে তা আমার বাকী (x64 64 বিট) অ্যাপ্লিকেশনটির জন্য কোনও উদ্বেগের বিষয় নয় এবং ওএস এপিআইগুলিকে কেবল উত্তরাধিকারের কারণে 'ব্লাহ 32' বলা হয়।
ভিজ্যুমেলন

23
var ofd = new Microsoft.Win32.OpenFileDialog() {Filter = "JPEG Files (*.jpeg)|*.jpeg|PNG Files (*.png)|*.png|JPG Files (*.jpg)|*.jpg|GIF Files (*.gif)|*.gif"}; 
var result = ofd.ShowDialog();
if (result == false) return;
textBox1.Text = ofd.FileName;
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.