草庐IT

联合体与枚举

全部标签

c# - 如何在 Windows 10 和 > .net 4.5 中用 c# 枚举音频输入设备?

如何获取Windows系统上已安装音频输入设备的列表?操作系统:Windows(10)框架:.Net>=4.5语言:c#我已经尝试过使用这个:ManagementObjectSearcherobjSearcher=newManagementObjectSearcher("SELECT*FROMWin32_SoundDevice");ManagementObjectCollectionobjCollection=objSearcher.Get();但这给了我所有设备的列表,我只需要输入设备列表 最佳答案 您可以使用DirectSoun

windows - 如何枚举 EventLog 的所有注册源

如果我选择在事件日志查看器中过滤“应用程序”日志,我可以看到很多在“应用程序”日志中注册的源。我如何通过C#以编程方式枚举所有这些来源?而且我似乎无法在“应用程序”和“系统”日志中注册我自己的事件源,为什么?顺便说一句:“事件源”的概念真的很困惑...... 最佳答案 可能有更合适的.NET或WindowsAPI可供您引用,但信息最终存储在注册表中的事件日志服务key下。该服务的根键在这里:HKLM\SYSTEM\CurrentControlSet\Services\Eventlog该键下的大部分子键将是系统上的各种事件日志,包括S

windows - 枚举 Windows 纸张大小

我可以使用GetLocaleStr(LCID,LOCALE_IPAPERSIZE,IntToStr(DMPAPER_A4))其中LOCALE_IPAPERSIZE=$100A但是有没有办法用名称枚举所有纸张尺寸? 最佳答案 没有枚举器,请参阅PaperSizes在MSDN上获取完整列表。您可以找出特定已安装打印机支持的纸张尺寸,但这不可能包括所有。 关于windows-枚举Windows纸张大小,我们在StackOverflow上找到一个类似的问题: http

c# - 生成枚举的 JavaScript 表示

我的代码中有一些[Flags]枚举,我想在不复制和粘贴的情况下向JavaScript公开。SignalR似乎通过将URL映射到返回反射生成的JavaScriptstub的Action来为其Hub代理做类似的事情。由于代码是在运行时生成的,因此似乎不可能包含在Bundle中。作为替代方案,我实现了一个T4模板以在设计时生成一个js文件:Enums={:{values=newDictionary();foreach(CodeElementchildinenu.Members){CodeVariablevalue=childasCodeVariable;if(value!=null){str

c# - 使用 CType 的枚举解决重载问题

考虑以下最小示例:ModuleModule1PrivateEnumMyEnumAEndEnumPublicSubMain(argsAsString())AreEqual(CType(0,MyEnum),MyEnum.A)'ErrorhereEndSubPrivateFunctionAreEqual(OfT)(item1AsT,item2AsT)AsBooleanReturnFalseEndFunctionPrivateFunctionAreEqual(item1AsObject,item2AsObject)AsBooleanReturnFalseEndFunctionEndModule

c# - 代码契约(Contract),forall 和自定义可枚举

我正在使用C#4.0和代码契约,并且我有自己的自定义GameRoomCollection:IEnumerable.我想确保没有GameRoomCollection的实例将永远包含null值元素。不过,我似乎无法做到这一点。我没有制定一般规则,而是尝试做一个简单明了的例子。AllGameRooms是GameRoomCollection的实例.privatevoidSetupListeners(GameRoomnewGameRoom){Contract.Requires(newGameRoom!=null);//...}privatevoidSetupListeners(Modelmode

c# - 枚举MSMQ中的所有传出队列,C#

如何使用C#和.NET3.5获取MSMQ中所有传出队列的列表?我找到了thisarticleaboutit但正如您在下面看到的,我没有MicrosoftMessageQueue3.0ObjectLibrary...的COM条目那么我怎样才能得到当前的出局队列列表呢?我认为一定有办法,因为我可以在ComputerManagement中看到它们...我能做什么? 最佳答案 我认为有两个不错的起点:http://msdn.microsoft.com/en-us/library/ms703173%28v=vs.85%29.aspxhttp:

c# - 如何将 int 转换为枚举值?

这个问题在这里已经有了答案:HowdoIcastinttoenuminC#?(32个答案)关闭9年前。这是我的代码,它抛出一个错误,提示Cannotconverttype"int"toCards.Suits和无法将类型“int”转换为Cards.RankprivateCard[]cards;publicDeck(){cards=newCard[52];for(intsuitVal=0;suitVal卡片构造函数是publicreadonlySuitssuit;publicreadonlyRankrank;publicCard(SuitsnewSuit,RanknewRank){suit

c# - 如何获得复杂的枚举值字符串表示

假设我有这个枚举:[Flags]publicenumSomeType{Val1=0,Val2=1,Val3=2,Val4=4,Val5=8,Val6=16,All=Val1|Val2|Val3|Val4|Val5|Val6}和一些变量:SomeTypeeasyType=SomeType.Val1|SomeType.Val2;SomeTypecomplexType=SomeType.All;如果我想遍历第一个枚举的值,我可以简单地做:foreach(stringsineasyType.ToString().Split(',')){...}但是,当我尝试对“complexType”应用相同

c# - 从 XAML 引用嵌套枚举类型

我似乎无法从XAML引用公共(public)嵌套枚举类型。我有课namespaceMyNamespace{publicclassMyClass{publicenumMyEnum{A,B,}}}我尝试像这样在Xaml中引用MyEnum:xmlns:MyNamespace="clr-namespace:MyNamespace;assembly=MyApp"....{x:TypeMyNamespace:MyClass:MyEnum}//DOESN'TWORK但是VS提示它找不到公共(public)类型MyEnum。我还尝试根据thispost的答案之一使用+语法...{x:TypeMyNam