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;
resultFile 就能得到你选中文件的路径
OpenFileDialog控件有下面基本属性
InitialDirectory 对话框的初始文件夹
Filter 要在对话框中显示的文件筛选器,比如,"文本文件(*.txt)|*.txt|全部文件(*.*)||*.*"
FilterIndex 在对话框中选择的文件筛选器的索引,假设选第一项就设为1
RestoreDirectory 控制对话框在关闭之前是否恢复当前文件夹
FileName 第一个在对话框中显示的文件或最后一个选取的文件
Title 将显示在对话框标题栏中的字符
AddExtension 是否自己主动加入默认扩展名
CheckPathExists
在对话框返回之前。检查指定路径是否存在
DefaultExt 默认扩展名
DereferenceLinks 在从对话框返回前是否取消引用快捷方式
ShowHelp
启用"帮助"button
ValiDateNames 控制对话框检查文件名称中是否不含有无效的字符或序列
如何设置OpenFileDialog组件的Filter。使实现一次过滤出多种扩展名的文件??
dlg.Filter = "Image Files(*.BMP;*.JPG;*.GIF)|*.BMP;*.JPG;*.GIF|All files (*.*)|*.* "
第一个參数是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;
}
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,
C# OpenFileDialog和PictrueBox的更多相关文章
- 1、怎样设置C#OpenFileDialog(文件选择窗体)的指定路径、文件格式等属性(设置打开默认路径、文件格式、窗体显示文本)
C#的OpenFileDialog的常用属性设置 1.设置属性 1)设置弹出的指定路径(绝对路径.相等路径) 2)设置标题 3)设置文本格式 2.打开方式1(绝对路径) 2.1) 打开的路径
- Dev 关于用openFileDialog控件上传图片的问题
1. OpenFileDialog控件有以下基本属性 InitialDirectory 对话框的初始目录 Filter 要在对话框中显示的文件筛选器,例如,"文本文件(*.txt)|*.tx ...
- C# winform OpenFileDialog MessageBox
1.弹出窗体选择本地文件-OpenFileDialog OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.Tit ...
- OpenFileDialog获取文件名和文件路径问题
OpenFileDialog获取文件名和文件路径问题(转) 转自:http://blog.sina.com.cn/s/blog_7511914e0101cbjn.html System.IO.Path ...
- 使用OpenFileDialog会更改默认程序目录
这个问题可能只有在特定的程序中会发现:当我们在程序中使用相对路径时是依赖于当前目录的.所以在使用类似代码: XElement rootNode = XElement.Load(@"zips/ ...
- OpenFileDialog - 设置 - Filter 笔记
using (OpenFileDialog fileSelectDialog = new OpenFileDialog()) { fileSelectDialog.Multiselect = fals ...
- C#的OpenFileDialog和SaveFileDialog的常见用法(转)
OpenFileDialog openFileDialog1 = new OpenFileDialog(); openFileDialog1.InitialDirectory = ...
- C# OpenFileDialog
OpenFileDialog 用于浏览并打开文件,在Windows Forms中使用,表现为标准的Windows对话框. 实例: 1.新建Windows Form Application 2.添加Op ...
- OpenFileDialog使用方法
OpenFileDialog基本属性 AddExtension 控制是否将扩展名自动添加到文件名上 CheckFileExists 指示用户指定不存在的文件时是否显示警告 CheckPathExist ...
随机推荐
- 【转】linux之ln命令
转自:http://www.cnblogs.com/peida/archive/2012/12/11/2812294.html ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位 ...
- Cocos2d-android (03) 向量
向量的基本运算及动作 import org.cocos2d.actions.interval.CCJumpBy; import org.cocos2d.actions.interval.CCMoveB ...
- JavaScript 性能优化 --By Google V8 Team Manager
原文:https://developers.google.com/v8/?hl=zh-CN Be Prepared before writing code[9:35] Understand how V ...
- Python 用 os.walk 遍历目录
今天第一次进行 文件遍历,自己递归写的时候还调试了好久,(主要因为分隔符号的问题),后来发现了os.walk方法,就忍不住和大家分享下. 先看下代码: import os for i in os.wa ...
- c++中的 extern "C"(转载)
比如说你用C 开发了一个DLL 库,为了能够让C ++语言也能够调用你的DLL 输出(Export) 的函数,你需要用extern "C" 来强制编译器不要修改你的函数名. 通常, ...
- BestCoder Round #88
传送门:BestCoder Round #88 分析: A题统计字符串中连续字串全为q的个数,预处理以下或加个cnt就好了: 代码: #include <cstdio> #include ...
- Visual Studio Profiler 跟踪检查每个exe dll 性能 执行时间 CPU占用情况的方法
- Hadoop MapReduce概念学习系列之shuffle大揭秘(十九)
shuffle是非常重要!一定要深入理解和多实践. 缓存,分组,排序,转发,这些都是mr的shuffle. Soga 我想得到按流量来排序,而且还是倒序,怎么达到实现呢?这就牵扯到排序的的问题 默认是 ...
- MVC中过虑特殊字符检测
[ValidateInput(false)] [HttpPost] public ActionResult Modify(Models.BlogArticle model) { //...... } ...
- HD1046An Easy Task
Problem Description Ignatius was born in a leap year, so he want to know when he could hold his birt ...