Heim Backend-Entwicklung C#.Net-Tutorial Nutzungsanalyse von OpenFileDialog und PictrueBox in C#

Nutzungsanalyse von OpenFileDialog und PictrueBox in C#

Jan 19, 2017 am 10:28 AM

本文实例讲述了C#中OpenFileDialog和PictrueBox的用法。分享给大家供大家参考。具体用法分析如下:

先来看看这段代码:

string resultFile = "";

OpenFileDialog openFileDialog1 = new OpenFileDialog();

openFileDialog1.InitialDirectory = "D:\\Patch";

openFileDialog1.Filter = "All files (*.*)|*.*|txt files (*.txt)|*.txt";

openFileDialog1.FilterIndex = 2;

openFileDialog1.RestoreDirectory = true;

  if (openFileDialog1.ShowDialog() == DialogResult.OK)

     resultFile = openFileDialog1.FileName;
Nach dem Login kopieren

resultFile 就能得到你选中文件的路径
OpenFileDialog控件有以下基本属性

InitialDirectory 对话框的初始目录

Filter 要在对话框中显示的文件筛选器,例如,"文本文件(*.txt)|*.txt|所有文件(*.*)||*.*"

FilterIndex 在对话框中选择的文件筛选器的索引,如果选第一项就设为1

RestoreDirectory 控制对话框在关闭之前是否恢复当前目录

FileName 第一个在对话框中显示的文件或最后一个选取的文件

Title 将显示在对话框标题栏中的字符

AddExtension 是否自动添加默认扩展名

CheckPathExists 在对话框返回之前,检查指定路径是否存在

DefaultExt 默认扩展名

DereferenceLinks 在从对话框返回前是否取消引用快捷方式

ShowHelp 启用"帮助"按钮

ValiDateNames 控制对话框检查文件名中是否不含有无效的字符或序列
怎样设置OpenFileDialog组件的Filter,使实现一次过滤出多种扩展名的文件?

dlg.Filter   =   "Image   Files(*.BMP;*.JPG;*.GIF)|*.BMP;*.JPG;*.GIF|All   files   (*.*)|*.* "
Nach dem Login kopieren

第一个参数是picturebox的宽度,第二个是picturebox的高度,第三个是你的图片。这个方法可以把图片调整到合适的大小。你就不要设置SizeMode的属性了,通过这个方法得到合适的图片后,设置picturebox的image属性等于这个图片,不要设置背景图。我没有测试。你自己去测试下吧,如果还是有问题,那就是图片太小了。你要重新做张图

public Image GetNewImage(int newImgWidth, int newImgHeight, Image srcImage)  
  
{  
  
    Image newImg = srcImage.GetThumbnailImage(newImgWidth, newImgHeight, null, new IntPtr());  
  
    Graphics gr = Graphics.FromImage(newImg);  
  
    gr.DrawImage(newImg, 0, 0, newImg.Width, newImg.Height);  
  
    gr.Dispose();  
  
    return newImg;  
  
}
Nach dem Login kopieren

PictrueBox的SizeMode属性:

// 摘要:

//     图像被置于 System.Windows.Forms.PictureBox 的左上角。如果图像比包含它的   System.Windows.Forms.PictureBox

//     大,则该图像将被剪裁掉。

Normal = 0,

//

// 摘要:

//     System.Windows.Forms.PictureBox 中的图像被拉伸或收缩,以适合 System.Windows.Forms.PictureBox

//     的大小。

StretchImage = 1,

//

// 摘要:

//     调整 System.Windows.Forms.PictureBox 大小,使其等于所包含的图像大小。

AutoSize = 2,

//

// 摘要:

//     如果 System.Windows.Forms.PictureBox 比图像大,则图像将居中显示。如果图像比 System.Windows.Forms.PictureBox

//     大,则图片将居于 System.Windows.Forms.PictureBox 中心,而外边缘将被剪裁掉。

CenterImage = 3,

//

// 摘要:

//     图像大小按其原有的大小比例被增加或减小。

Zoom = 4,
Nach dem Login kopieren

以上就是C#中OpenFileDialog和PictrueBox的用法分析的内容,更多相关内容请关注PHP中文网(www.php.cn)!


Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Active Directory mit C# Active Directory mit C# Sep 03, 2024 pm 03:33 PM

Leitfaden zu Active Directory mit C#. Hier besprechen wir die Einführung und die Funktionsweise von Active Directory in C# sowie die Syntax und das Beispiel.

Zufallszahlengenerator in C# Zufallszahlengenerator in C# Sep 03, 2024 pm 03:34 PM

Leitfaden zum Zufallszahlengenerator in C#. Hier besprechen wir die Funktionsweise des Zufallszahlengenerators, das Konzept von Pseudozufallszahlen und sicheren Zahlen.

C#-Serialisierung C#-Serialisierung Sep 03, 2024 pm 03:30 PM

Leitfaden zur C#-Serialisierung. Hier besprechen wir die Einführung, die Schritte des C#-Serialisierungsobjekts, die Funktionsweise bzw. das Beispiel.

C#-Datenrasteransicht C#-Datenrasteransicht Sep 03, 2024 pm 03:32 PM

Leitfaden zur C#-Datenrasteransicht. Hier diskutieren wir die Beispiele, wie eine Datenrasteransicht aus der SQL-Datenbank oder einer Excel-Datei geladen und exportiert werden kann.

Muster in C# Muster in C# Sep 03, 2024 pm 03:33 PM

Leitfaden zu Mustern in C#. Hier besprechen wir die Einführung und die drei wichtigsten Arten von Mustern in C# zusammen mit ihren Beispielen und der Code-Implementierung.

Primzahlen in C# Primzahlen in C# Sep 03, 2024 pm 03:35 PM

Leitfaden zu Primzahlen in C#. Hier besprechen wir die Einführung und Beispiele von Primzahlen in C# sowie die Codeimplementierung.

Fakultät in C# Fakultät in C# Sep 03, 2024 pm 03:34 PM

Leitfaden zur Fakultät in C#. Hier diskutieren wir die Einführung in die Fakultät in C# zusammen mit verschiedenen Beispielen und Code-Implementierungen.

Der Unterschied zwischen Multithreading und asynchronem C# Der Unterschied zwischen Multithreading und asynchronem C# Apr 03, 2025 pm 02:57 PM

Der Unterschied zwischen Multithreading und Asynchron besteht darin, dass Multithreading gleichzeitig mehrere Threads ausführt, während asynchron Operationen ausführt, ohne den aktuellen Thread zu blockieren. Multithreading wird für rechenintensive Aufgaben verwendet, während asynchron für die Benutzerinteraktion verwendet wird. Der Vorteil des Multi-Threading besteht darin, die Rechenleistung zu verbessern, während der Vorteil von Asynchron nicht darin besteht, UI-Threads zu blockieren. Die Auswahl von Multithreading oder Asynchron ist von der Art der Aufgabe abhängt: Berechnungsintensive Aufgaben verwenden Multithreading, Aufgaben, die mit externen Ressourcen interagieren und die UI-Reaktionsfähigkeit asynchron verwenden müssen.

See all articles