我想知道将enum标志的所有位设置为1 的通用方法.我只想enum为所有比较返回一个,而不管其他枚举.
这段代码有效;
[Flags]
public enum SomeRightEnum : uint
{
CanDoNothing = 0,
CanDoSomething = 1 << 0,
CanDoSomethingElse = 1 << 1,
CanDoYetAnotherThing = 1 << 2,
...
DoEverything = 0xFFFFFFFF
}
Run Code Online (Sandbox Code Playgroud)
但是在上面的代码中,因为它是uint我们设置"F"的数量,如果是的话它将不起作用int.
所以,我会感激的所有位设置的一个通用的方法enum标志为1,而不管数据类型(iNT, int64,uint等)
我有一个Windows服务应用程序.并通过在控制台模式下运行来调试它.
在这里http://support.microsoft.com/kb/842793 写道,Timers.Timer有一个错误,而不是在Windows服务中触发.解决方法是使用Threading.Timer本文适用于.NET 1.0和1.1
我使用的是.NET 4,但经过一段时间Threading.Timer也没有开火.那可能是什么原因呢?你能建议什么作为解决方法?
谢谢,
最好的祝福
编辑:我将计时器从Threading.Timer更改为Timers.Timer,它没有任何问题.
我在 wpf 应用程序中使用 Microsoft.Win32.OpenFileDialog,因为它在此处声明为等效;http://msdn.microsoft.com/en-us/library/ms750559.aspx
我将 RestoreDirectory 属性设置为 true,但它没有任何效果。当我等待该属性时,记录为“此属性未实现”。
那么如何在不自己实现逻辑的情况下完成这项任务呢?
我有一个大小不断变化的图像,我想知道我应该使用哪种字体大小来适应动态变化的大小。
如您所知,有一种Graphics.MeasureString方法可以计算字符串的大小。一种可能的方法是测量每个字体大小,直到找到最合适的字体大小,但由于我需要在一秒钟内渲染很多帧,因此性能影响太大了。
给定特定的图像宽度,是否有更有效的方法来查找字体大小?
我正在尝试序列化/反序列化字符串。使用代码:
private byte[] StrToBytes(string str)
{
BinaryFormatter bf = new BinaryFormatter();
MemoryStream ms = new MemoryStream();
bf.Serialize(ms, str);
ms.Seek(0, 0);
return ms.ToArray();
}
private string BytesToStr(byte[] bytes)
{
BinaryFormatter bfx = new BinaryFormatter();
MemoryStream msx = new MemoryStream();
msx.Write(bytes, 0, bytes.Length);
msx.Seek(0, 0);
return Convert.ToString(bfx.Deserialize(msx));
}
Run Code Online (Sandbox Code Playgroud)
如果我使用字符串变量,那么这两个代码可以正常工作。
但是,如果我反序列化一个字符串并将其保存到文件中,则在阅读了后面的内容并再次对其进行序列化之后,我只会得到字符串的第一部分。所以我相信我的文件保存/读取操作有问题。这是我保存/读取的代码
private byte[] ReadWhole(string fileName)
{
try
{
using (BinaryReader br = new BinaryReader(new FileStream(fileName, FileMode.Open)))
{
return br.ReadBytes((int)br.BaseStream.Length);
}
}
catch (Exception)
{
return null;
}
}
private void WriteWhole(byte[] wrt,string fileName,bool …Run Code Online (Sandbox Code Playgroud) 我使用的是datagridview,它的数据源是BindingList.但是当我尝试更改第一行的可见性时,我收到了InvalidOperationException.如何更改第一行的可见值?
提前致谢.
我正在使用反射类来调用某些其他dll上的方法.其中一个方法的参数是委托的类型.
我想通过使用反射来调用这些方法.所以我需要将函数参数作为对象数组传递,但我找不到任何关于如何将委托转换为对象的内容.
提前致谢
c# ×6
.net ×1
.net-4.0 ×1
datagridview ×1
delegates ×1
enum-flags ×1
enums ×1
gdi+ ×1
object ×1
timer ×1
visibility ×1
wpf ×1