【问题标题】:Using Enumeration in C#在 C# 中使用枚举
【发布时间】:2011-09-28 01:36:57
【问题描述】:

我正在为 Windows Phone Mango 编写我的第一个 C# 应用程序。它被设计成一个非常简单的手电筒应用程序。

以前,在 Windows Phone 上无法访问相机的闪光灯,但在这个最新版本中,可以。这是有关它的文档:

http://msdn.microsoft.com/en-us/library/microsoft.devices.flashmode(v=vs.92).aspx

不幸的是,这对我来说完全没有意义。我设置了按钮,并且 if-then 语句可以在单击时切换按钮图标和文本。我只是不知道如何实际打开和关闭闪光灯。我会很感激一个清晰的例子,这样我就可以完成这个。

对于那些不想离开网站的人...该链接基本上是这样说的:

public enum FlashMode

Members: On, Off, Auto, RedEyeReduction

【问题讨论】:

    标签: c# .net enums enumeration


    【解决方案1】:

    FlashMode 枚举只是一组代表 FlashMode 有效值的值。然而,FlashMode 似乎定义了您拍照时闪光灯的行为方式。 “开”似乎意味着闪光灯会一直闪烁。从持续产生光的意义上说,这似乎并不意味着光本身是“开”的。

    支持这一点的一些证据:FlashMode 文档说 FlashMode.On 表示“相机闪光灯已启用”。

    【讨论】:

    • 啊。该死的,以为这意味着你可以切换它。不过谢谢。我将按原样提交,只有白色背景。
    【解决方案2】:

    你看到这个链接了吗?

    http://msdn.microsoft.com/en-us/library/hh202949(v=vs.92).aspx

    如果您可以使用名为“cam”的变量(免责声明:我对移动设备一无所知),您需要更改 FlashMode 属性。所以在你点击按钮时,你会这样做

    cam.FlashMode = FlashMode.On 
    

    编辑:进一步观察后,“cam”变量似乎是 PhotoCamera 类的一个实例。所以这可能需要在你的应用程序中构建。此链接也可能对此有所帮助。

    http://msdn.microsoft.com/en-us/library/hh202956(v=vs.92).aspx

    【讨论】:

      【解决方案3】:

      在 MSDN enum 上有一个很好的解释,所以我不会尝试在这里重新创建它,但基本上已经创建了一个新类型来简化值分配。不必记住(例如)'On' 等于 0,'Off' 等于 1,您可以使用 FlashMode.On 代替。当然,这些枚举仅代表值,因此您仍然需要将其分配给某些东西。

      例如,我在您提供的链接中的一个链接中找到了这个:

      cam.FlashMode = FlashMode.On;

      这看起来很有趣,祝你好运!

      【讨论】:

        【解决方案4】:

        如果你正在尝试制作某种手电筒应用程序,根据this 没有 LED 的 API

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2010-12-12
          • 2010-11-26
          • 1970-01-01
          • 2018-03-19
          • 1970-01-01
          • 2013-02-11
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多