问题列表 - 第40520页

重型构造函数或使用方法

这两种方法都对我有用,但我不确定从"良好实践"的角度来看这个建议是什么.

我有一个在我的库中执行各种控制功能的类,因此需要初始化各种对象和属性.

是否可以将所有这些逻辑放在类的构造函数中,或者我应该将它放在"Initialise"方法中.

public MyClass()
{
    mSubObjectA = new mSubObjectA();
    mSubObjectA.DoStuff();
    mSubObjectA.DoMoreStuff();

    mSubObjectB = new mSubObjectB();
    mSubObjectC = new mSubObjectC();

    if (something)
    {
        DoStuff();
    }
    else
    {
        MagicHappens();
    }
}
Run Code Online (Sandbox Code Playgroud)

c#

3
推荐指数
1
解决办法
596
查看次数

为包含集合的嵌套类正确实现NSObject描述方法

使用我自己的类,我通常会覆盖 - (NSString*)描述方法以简化调试.但是,当我调用我实现的类的描述时,从我的其他类中调用递归描述方法,来自"更深"类的所有格式化字符都被转义.这使得任何漂亮的打印都难以实现.这是一个让它更清晰的例子:

@interface Foo {
    NSArray *barsArray;
}
@end
@implementation Foo
- (NSString *)description {
    return [NSString stringWithFormat: @"foo contents: %@", barsArray];
}

@interface Bar {
    NSString *s1;
    NSString *s2;
}
@implementation Bar
- (NSString *)description {
    return [NSString stringWithFormat: @"s1: %@\ns2: %@", s1, s2];
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,来自B类描述的\n换行符将在A类描述方法的输出中被转义.任何想法如何摆脱或规避这种行为?打印全部包含集合的嵌套类时尤其烦人.

iphone

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

禁用横向软键盘输入的全屏编辑视图?

在使用软键盘的Android设备上,我希望防止在横向模式下出现全屏键盘编辑视图(如下所示)(即我只想看到软键盘本身和我后面的视图).

我假设这可以使用setExtractViewShown(false)方法on 来实现InputMethodService,但我无法访问此默认实例并且不想实现自定义输入方法.

Android全屏编辑视图

编辑添加:输入的视图不是TextView(它是View一个自定义InputConnection实现),所以android:imeOptions="flagNoExtractUi"在这里不起作用.

android android-softkeyboard android-input-method

224
推荐指数
9
解决办法
8万
查看次数

无法通过类型(!)找到模板化控件的父级(wpf)

在我的WPF项目中,我有一点复杂的控制.在项目中我只使用Controls(它们都是模板化的),除了MainWindow.

在一个屏幕上,我有以下布局(用于显示模板应用和填充内容后的布局):

MyScreenControl
-MyTableControl
--ItemsControl
--- HeaderItemsControl
----- HeaderItemsControl.Header
------ MyHeaderControl
----- HeaderItemsControl.Items
------ MyItemControl
------ MyItemControl
--- --- MyItemControl
......

当我在ScreenControl的代码文件中时,在OnMouseLeftButtonDown方法中,我想确定click事件是来自MyHeaderControl还是MyItemControl.

MouseButtonEventArgs的Source是ScreenControl,OriginalSource是MyItemControl/MyHeaderControl模板中的TextBlock.

我第一次尝试找到MyItemControl/MyHeaderControl是从OriginalSource开始,并递归地查看Parent属性的类型.它工作正常,直到我到达模板的根(在这种情况下是一个ViewBox),但根没有父元素.

我在我早期的z项目中使用了这样的方法并且它有效,但后来我使用的是UserControls,而不是Controls,也没有模板.

任何想法我应该如何处理这个问题(一个好主意是作为代码的好结果)?

thx,Tenshiko

wpf templates parent wpf-controls onmouseclick

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

Linq To Xml Null检查属性

<books>
   <book name="Christmas Cheer" price="10" />
   <book name="Holiday Season" price="12" />
   <book name="Eggnog Fun" price="5" special="Half Off" />
</books>
Run Code Online (Sandbox Code Playgroud)

我想用linq解析它,我很好奇其他人用什么方法处理特殊问题.我目前的工作方式是:

var books = from book in booksXml.Descendants("book")
                        let Name = book.Attribute("name") ?? new XAttribute("name", string.Empty)
                        let Price = book.Attribute("price") ?? new XAttribute("price", 0)
                        let Special = book.Attribute("special") ?? new XAttribute("special", string.Empty)
                        select new
                                   {
                                       Name = Name.Value,
                                       Price = Convert.ToInt32(Price.Value),
                                       Special = Special.Value
                                   };
Run Code Online (Sandbox Code Playgroud)

我想知道是否有更好的方法来解决这个问题.

谢谢,

  • 贾里德

c# linq linq-to-xml

10
推荐指数
1
解决办法
6359
查看次数

当引导亚马逊弹性地图减少工作时,我的脚本可以使用sudo吗?

我需要:

sudo apt-get install rubygems
sudo gem install <lots of gems>
Run Code Online (Sandbox Code Playgroud)

引导操作是否具有sudo访问权限?

mapreduce amazon-web-services

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

MX记录查找和检查

我需要创建一个工具来检查域实时mx记录与预期的内容(我们的一些工作人员摆弄它们并导致所有传入的邮件重定向到虚空)

现在我不会撒谎,我一点也不是一个称职的程序员!我大约40页进入"潜入python",可以阅读和理解最基本的代码.但我愿意学习,而不仅仅是给予答案.

那么任何人都可以建议我应该使用哪种语言?

我正在考虑使用python,并开始使用0s.system()来做一个(挖掘+ nocmd domain.com mx + noall +回答)来提取记录,然后我对如何使用将其与现有记录集进行比较.

对不起,如果这听起来像胡说八道!

谢谢克里斯

python mx-record

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

youtube的报告错误工具如何截取屏幕截图?

如果你在页面底部有一个"报告错误"链接.

它们可以让您突出显示部分屏幕,并将其与错误描述一起发送.

知道如何实现这一点?

html javascript youtube flash

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

"++ l*= m"是未定义的行为吗?

我已经开始研究C++ 0x了.我偶然发现了以下表达方式:

int l = 1, m=2;
++l *= m;
Run Code Online (Sandbox Code Playgroud)

我不知道第二个表达式是否有明确定义的行为.所以我在这里问.

不是UB吗?我只是渴望知道.

c++ c++11

16
推荐指数
2
解决办法
503
查看次数

Android:将图像存储到项目目录(文件)中?

我想将我的Bitmap图像存储到项目目录中.如何访问项目文件夹或项目文件夹的地址是什么?

directory android store image file

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