即使在 RenderOptions.SetBitmapScalingMode(thumbImg, BitmapScalingMode.HighQuality); 之后,我的图像质量仍然很低;任何的想法
if(File.Exists(image_file.FullName))
{
IPLRes.print( "Loading " + image_file.FullName);
BitmapImage thumbImg = new BitmapImage(new Uri(image_file.FullName));
RenderOptions.SetBitmapScalingMode(thumbImg, BitmapScalingMode.HighQuality);
ImageBrush imgbrush = new ImageBrush(thumbImg);
imgbrush.Stretch = System.Windows.Media.Stretch.Uniform;
RenderedPages[page_numx] = imgbrush;
}
Run Code Online (Sandbox Code Playgroud)
.....
ShapRectangle thumbnail = (ShapRectangle)FindName("rect_Thumb" + thumbnail_nbr);
VISUAL thumbnailvisual = (VISUAL)FindName("rect_Thumb" + thumbnail_nbr);
thumbnail.Fill = (System.Windows.Media.Brush)RenderedPages[page_numx];
Run Code Online (Sandbox Code Playgroud)
我的程序中有一个SaveFileDialog.问题是当我在对话框上单击"取消"时,另一个SaveFileDialog打开.但是,当我点击取消第二SaveFileDialog,第三确实不出现,所以它不是一个圈或类似的东西.我无法看到是什么导致我的SaveFileDialog以如此奇怪的方式表现.显然我需要修复它,以便如果用户在第一个SaveFileDialog上单击取消,它会将它们返回到表单.
保存在我的程序中的代码如下:
private void SaveFile()
{
if (filepath == null)
{
SaveFileAs();
}
else
{
StreamWriter sw = new StreamWriter(filepath);
try
{
sw.WriteLine(richTextBoxPrintCtrl1.Rtf);
richTextBoxPrintCtrl1.Modified = false;
sw.Close();
lastsave.Text = "Last Saved: " + DateTime.Now.ToString();
}
catch (Exception exc)
{
MessageBox.Show("Failed to save file. \n \n" + exc.Message);
}
finally
{
if (sw != null) sw.Close();
}
Run Code Online (Sandbox Code Playgroud)
和SaveFileAs
private void SaveFileAs()
{
SaveFileDialog sfdSaveFile = new SaveFileDialog();//Creates a new instance of the SaveFileDialog
sfdSaveFile.Title = "Save File";//The title of …
Run Code Online (Sandbox Code Playgroud) 我试图通过所有窗口表单保存用户名和一些其他信息作为全局变量从登录表单开始,像userName
我搜索并提出下面的代码
首先,我创建单独的类globals
,如下所示
public static class globals
{
public static string userName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
然后我在登录成功时设置该变量,如下所示
Checks.globals.userName = TB_USER_NAME.Text;
Run Code Online (Sandbox Code Playgroud)
几个问题
我必须使属性userName受保护或可能是私有的吗?
public static string userName { get; private set; }
Run Code Online (Sandbox Code Playgroud)首次初始化后,该值是否会再次设置?
还有什么比这更好的了吗?
我有两个字节数组.我想将这两个字节数组合并为一个字节数组.
通常,我只是创建一个新的字节数组,其长度为= byte array#1 + byte array#2.然后将字节数组#1和#2复制到新的字节数组.
有没有一种更有效的方法来使用VB.NET和.NET 4合并两个字节数组?
编写一个C#应用程序来运行一些预定的任务,我真正需要的就是持续监控日期和时间,并在每个月的28号召唤一次功能,然后耐心地等待下一个28日一个月到来.
我想它会以某种方式使用System.Threading.Thread.Sleep(),但至于它应该运行的具体条件,以及如何防止它在相关日期多次运行,我不是当然...
任何帮助非常感谢:)
由于某种原因,除Studio项属性外,Visual Studio具有ArrayList的所有属性和方法(它不会出现在自动完成框中).无论如何我都不会编译它.
我正在阅读一个巨大的文本文件,如下所示.现在想要的是,如果我达到一个特定的单词test:
在这里说,我将从该行推送到数据库的值,并通过连接10个后续行的值来输出一个值.所以我希望通过使用File. Readalllines
或任何其他机制获得10个后续行并将其存储到内存中.我将如何实现它.截至目前,我正在加载整个文本文件,File.Readalllines
这使得应用程序非常慢.
using (FileStream fs = File.Open(filename, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
using (BufferedStream bs = new BufferedStream(fs))
using (StreamReader sr = new StreamReader(bs))
{
string s = String.Empty;
while ((s = sr.ReadLine()) != null)
{
if (s.Contains("test:"))
{
//
}
}
}
Run Code Online (Sandbox Code Playgroud)
编辑
我正在研究消费者答案,这里有一个扭曲假设我有10000行开头,test:
每行都有ID
,我插入一个ID的行,如果ID == ID存储在字典中,那么我必须存储成功的10行而不是总共有前10行,那怎么办呢?
编辑
@spender我这样做SkipWhile(line => (!line.Contains("ADD GTRX:") && !line.Contains(dict.CellId.ToString()))).Take(10);
但没有运气
编辑 @spender最后我做了它我必须移动括号如此完整代码我做了如下所示,我删除空行也
var linesOfInterest = File.ReadLines(filename)
.SkipWhile(line => !line.Contains("test:")).SkipWhile(line => !line.Contains(dictId.ToString())).Take(10);
var output = string.Join(Environment.NewLine, linesOfInterest).Trim().Split(';').Where(arg …
Run Code Online (Sandbox Code Playgroud) 我正在尝试为C类库创建一个C#包装器来控制USB数据总线通信设备.根据设备初始化时设置的值,该设备支持连接外部时钟或使用自己的内部时钟.
制造商为其C库提供了带有以下#define变量的头文件
#define DATA_SRC_INT = 0x000000000L
#define DATA_SRC_EXT = 0x000000001L
#define DATA_SRC_NONE = 0x00000000FL
Run Code Online (Sandbox Code Playgroud)
所以这让我有了问题.什么数字确实0x000000000L
代表什么?
我意识到这个问题可能过于简单化了.当我最初写这个问题时,我没有看到大量的可移植C代码.我试图根据我收到的一些反馈来澄清我原来的问题.
我正在研究.NET中的反序列化类,我必须开发一个方法,它为我提供了一个存储在字符串中的变量名.
我有一个字符串,如:
string string_name = "this_is_going_to_be_var_name";
Run Code Online (Sandbox Code Playgroud)
现在我该怎么做才能让我的代码动态声明一个名为this_is_going_to_be_var_name的变量?
因此要清理:将有一个反序列化类,它将根据高级程序员/用户的意愿,声明与作为输入提供的字符串相同的变量及其PARENT TYPES.
例如:在javascript/jQuery中,当我通过发出请求来获取JSON时,解释器声明具有相同名称的变量/数组并为它们赋值.如果{"var_name":"var_value"}是一个JSON字符串,则解释器将创建一个名为var_name的变量,并为其分配"var_value",例如json_data_object.var_name.
当我按下子窗体上的关闭按钮时,应关闭父窗体.
由于编程效率高,我不喜欢使用表单show()和hide()方法.(而不是我使用showDialog()方法)
让我们假设我有3个表格
从form_A我将使用form_B.ShowDialog()
方法打开form_B .然后我进一步使用form_C.ShowDialog()
method 从form_B打开form_C .
我的问题是当我使用按钮点击事件关闭form_C时,应该关闭form_C和form_B并返回到form_A.我怎么能这样做?
有人请帮帮我.
参考下面的代码:
而不是有这么多 if else 语句:
List<T> GetTs(string createBy, bool isAdmin, string departmentCode, ...)
{
if(isAdmin)
{
if(!string.IsNullOrEmpty(createBy))
{
var query = context.table
.Where(x => string.compare(x.createBy, createBy, StringComparison.OrdinalIgnoreCase) == 0)
.ToList();
return query;
}
else
{
var query = context.table.ToList();
return query;
}
}
else
{
if(!string.IsNullOrEmpty(createBy))
{
var query = context.table
.Where(x => string.compare(x.departmentCode, departmentCode, StringComparison.OrdinalIgnoreCase) == 0)
.Where(x => string.compare(x.createBy, createBy, StringComparison.OrdinalIgnoreCase) == 0)
.ToList();
return query;
}
else
{
var query = context.table
.Where(x => string.compare(x.departmentCode, departmentCode, StringComparison.OrdinalIgnoreCase) …
Run Code Online (Sandbox Code Playgroud) .net-4.0 ×11
c# ×10
.net ×2
arraylist ×1
bitmapimage ×1
bytearray ×1
c#-4.0 ×1
formatting ×1
linq ×1
merge ×1
render ×1
richtextbox ×1
save ×1
text-files ×1
vb.net ×1
winforms ×1