问题列表 - 第29438页

为什么[Flag]'枚举从0开始并递增1?

编辑:似乎大多数人误解了我的问题.

我知道枚举是如何运作的,我知道二进制.我想知道为什么带有[Flags]属性的枚举是按原样设计的.

原帖:

这可能是重复的,但我没有找到任何其他帖子,所以这里.

我打赌它背后有一些很好的理由,我发现它有点容易出错.

[Flag]
public enum Flagged
{
  One, // 0
  Two, // 1
  Three, // 2
  Four, // 3
}

Flagged f; // Defaults to Flagged.One = 0
f = Flagged.Four;
(f & Flagged.One) != 0; // Sure.. One defaults to 0
(f & Flagged.Two) != 0; // 3 & 1 == 1
(f & Flagged.Three) != 0; // 3 & 2 == 2
Run Code Online (Sandbox Code Playgroud)

如果做到这样的话会不会更有意义?

[Flag]
public enum Flagged
{
  One = 1 << 0, …
Run Code Online (Sandbox Code Playgroud)

c# enums bitflags

8
推荐指数
3
解决办法
2738
查看次数

在WPF MVVM ViewModels中简化RelayCommand/DelegateCommand

如果您正在使用MVVM并使用命令,您通常会在ViewModel上看到由私有RelayCommand或DelegateCommand字段支持的ICommand属性,例如MSDN上原始MVVM文章中的此示例:

RelayCommand _saveCommand;
public ICommand SaveCommand
{
    get
    {
        if (_saveCommand == null)
        {
            _saveCommand = new RelayCommand(param => this.Save(),
                param => this.CanSave );
        }
        return _saveCommand;
    }
}
Run Code Online (Sandbox Code Playgroud)

然而,这很麻烦,并且使得设置新命令相当繁琐(我与一些资深的WinForms开发人员合作,他们对所有这些打字都不屑一顾).所以我想简化它并挖掘一下.我在get {}块的第一行设置了一个断点,看到它只是在我的应用程序第一次加载时才被击中 - 我可以随后发出尽可能多的命令,这个断点永远不会被击中 - 所以我想要简化这个以从我的ViewModel中删除一些混乱,并注意到以下代码的工作方式相同:

public ICommand SaveCommand
{
    get
    {
        return new RelayCommand(param => this.Save(), param => this.CanSave );
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,我不太了解C#或垃圾收集器,知道这是否会导致问题,例如在某些情况下产生过多的垃圾.这会造成任何问题吗?

c# wpf mvvm relaycommand delegatecommand

19
推荐指数
3
解决办法
2万
查看次数

android wifi权限

当我用setWifiEnabled切换wifi时,我不明白为什么我需要将WAKE_LOCK权限添加到应用程序清单...任何想法?

android wifi

5
推荐指数
1
解决办法
1706
查看次数

使用NSTextView伪造NSTextField以获得漂亮的颜色?

尝试更改NSTextField的选定文本背景颜色(我们有一个黑暗的UI,选定的文本背景几乎与文本本身相同),但只有NSTextView似乎允许我们更改它.

因此我们尝试使用NSTextView伪造NSTextField,但无法使文本滚动工作相同.

我们得到的最接近的是这段代码:

NSTextView *tf = [ [ NSTextView alloc ] initWithFrame: NSMakeRect( 30.0, 20.0, 80.0, 22.0 ) ];

// Dark UI
[tf setTextColor:[NSColor whiteColor]];
[tf setBackgroundColor:[NSColor darkGrayColor]];

// Fixed size
[tf setVerticallyResizable:FALSE];
[tf setHorizontallyResizable:FALSE];

[tf setAlignment:NSRightTextAlignment]; // Make it right-aligned (yup, we need this too)

[[tf textContainer] setContainerSize:NSMakeSize(2000, 20)]; // Try to Avoid line wrapping with this ugly hack
[tf setFieldEditor:TRUE]; // Make Return key accept the textfield

// Set text properties
NSMutableDictionary *dict = [[[tf selectedTextAttributes] mutableCopy ] …
Run Code Online (Sandbox Code Playgroud)

macos cocoa objective-c nstextfield nstextview

9
推荐指数
1
解决办法
3433
查看次数

PostgreSQL的.NET连接器

上次我使用Npgsql,即版本1.0,它工作得非常慢.Npgsql还有其他替代方案吗?

postgresql

4
推荐指数
1
解决办法
5191
查看次数

如何在打包时使maven"添加目录条目"?

我有一个程序,getClass().getClassLoader().getResource()用于获取目录的URL,它在eclipse中工作正常,但在jared之后,它返回null.

根据这个网址:http: //www.coderanch.com/t/385935/java/java/getResource-path-fails-Jar

问题的结果是因为jar中不存在路径本身.存在路径的文件,但不存在路径本身.我在Eclipse中使用"Runnable JAR File"导出命令.当我尝试使用旧的导出"Jar文件"来创建jar时,我注意到" 添加目录条目 " 的复选框,这就是解决方案.Jar文件在jar中需要自己的目录条目,getResource()返回路径的URL.

但是在maven中,我无法在打包时找到"添加目录条目"的命令,有人可以给我一个提示吗?非常感谢 !

环境:eclipse 3.5,m2eclipse,maven 2.2.1

java jar getresource

7
推荐指数
1
解决办法
3220
查看次数

jboss/server/web/tmp/vfs-nested.tmp目录中的大量JAR文件

有时我们在jboss/server/web/tmp/vfs-nested.tmp 目录中有大量的JAR文件 .
例如,今天这个目录包含超过350k的jar文件.
但在其他主机上,此目录中只有2个jar文件.
这个问题的根本原因是什么?

我们使用JBoss 5.1

更新:
我在JBoss 5.1.0.GA的发行说明中找到了以下信息:

JBoss VFS提供了一组不同的开关来控制它的内部行为.JBoss AS默认设置jboss.vfs.forceCopy = true.要查看所有提供的VFS标志,请查看VFSUtils.java类的代码.

所以我不明白我应该设置什么?
我应该设置-Djboss.vfs.forceNoCopy = true还是-Djboss.vfs.forceCopy = false
或者我应该设置它们两个?

更新1:
我已阅读整个主题http://community.jboss.org/thread/2148?start=0&tstart=0 现在我不应该更改jboss.vfs.forceCopy或jboss.vfs.forceNoCopy.
根据这个线程,我将出现OutOfMemory错误而不是tmp目录中的大量文件.

jboss jboss5.x

15
推荐指数
1
解决办法
1万
查看次数

Nexus One/Android"CPU可能被挂钩"的bug

我正在使用NDK(修订版4)和OpenGL ES 2.0为Nexus One编写图形密集的游戏.我们真的在这里推动硬件,并且在大多数情况下它运行良好,除了每隔一段时间我就会遇到这个日志消息严重崩溃:

W/SharedBufferStack(398):waitForCondition(LockCondition)超时(identity = 9,status = 0).CPU可以挂钩.再试一次.

整个系统锁定,反复重复此消息,并在几分钟后重新启动,或者我们必须手动重启.我们使用的是Android OS 2.1,更新1.

我知道其他一些人已经看到过这个bug,有时与音频有关.在我的情况下,它是由它引起的SharedBufferStack,所以我猜这是一个OpenGL问题.有没有人遇到这个,更好的修复它?或者有人知道发生了什么事SharedBufferStack来帮助我缩小范围吗?

android android-ndk nexus-one

15
推荐指数
1
解决办法
6948
查看次数

Android列表和复选框

我有一个简单的列表,从数据库中填入一个复选框.我需要一个处理所选的所有复选框.当那时按下CLEAR按钮时,我需要所有选中复选框的行ID来删除它们.为此:我的list.xml文件如下所示:

< LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:orientation="vertical"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent" >

<ListView 
          android:id="@id/android:list"
      android:layout_width="fill_parent"
          android:layout_height="wrap_content"
          android:layout_weight="1"
          />

<Button 
       android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/clearselected"
        android:text="CLEAR"
        android:clickable ="false"/>

 </LinearLayout>
Run Code Online (Sandbox Code Playgroud)

我的data_entry.xml如下所示:

 <LinearLayout
      xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content">
          <CheckBox 
          android:id="@+id/CheckBox" 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content"
          android:layout_x="50px" 
          android:layout_y="22px"></CheckBox>
<TextView android:text="@+id/EntryText"
          android:id="@+id/EntryText"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:textAppearance="?android:attr/textAppearanceLarge"
          android:textColor="@color/blue"/>

 </LinearLayout>
Run Code Online (Sandbox Code Playgroud)

现在:我有list.java文件,我填写列表如下:

private void populateList() {
     Cursor c = db1.getAllList();
      String[] fields = new String[]{db1.get_data()};

       SimpleCursorAdapter cursorAdapter = new 

     ListAdapter adapter = new SimpleCursorAdapter(this, R.layout.data_entry, c,
          fields, new int[] {R.id.EntryText});


     setListAdapter(adapter);
}
Run Code Online (Sandbox Code Playgroud)

现在我在哪里给heckbox导致其他任何地方的句柄,它会给我一个null异常,因为data_entry包含复选框.另外我需要一个监听器来处理复选框状态?我只是坚持这一点,毫无头绪..

android

6
推荐指数
1
解决办法
1万
查看次数

如何将aspx页面转换为html页面?

我在asp.net中设计了我的网页aspx页面.我需要将其转换为html页面.因为我的服务器不支持.aspx页面帮我解决这个问题

html asp.net

5
推荐指数
1
解决办法
4万
查看次数