我有一个继承TextBox
Class的类,调用它MyTextBox
我想重新定义Background
这个类的默认值.
所以我找了一种方法,找到了一个很好的选择:打电话 BackgroundProperty.OverrideMetadata()
麻烦的是:我可以把它放在哪里?
在App.OnStartup()
?丑陋而不实用,我希望它在我的Class的代码文件中.
在班级的构造者?我得到一个例外:
PropertyMetadata已经为"MyTextBox"类型注册.
(对我来说似乎很好,我理解为什么我完美地得到这个)
所以我再次看了一下C#中的静态构造函数(之前没有关于那个,遗憾的是)
所以这是我的代码:
public class MyTextBox : TextBox
{
static MyTextBox()
{
MyTextBox.BackgroundProperty.OverrideMetadata(typeof(MyTextBox), new FrameworkPropertyMetadata(App.Current.Resources["CustomBackgroundBrush"]));
}
}
Run Code Online (Sandbox Code Playgroud)
现在,我很高兴这一点,但微软不是.也就是说,当我使用代码分析功能时,我得到这个:
因此我的问题是:我能做些什么呢?
任何提示欢迎,谢谢
编辑:我要补充一点,我不完全理解为什么我会收到此警告,因为我没有在静态构造函数中初始化任何说法,或者是我?
我正在使用VBScript,我的目标是能够用驱动器号代替我选择的路径.我需要D驱动器,如果它不可用,我需要检查它是否已经映射到正确的位置; 然后通知用户是否不是.我发现了这个:http://technet.microsoft.com/en-us/library/ee156605.aspx,我正在尝试调整他们的第二个例子:
Set objShell = WScript.CreateObject("WScript.Shell")
Set objExecObject = objShell.Exec("cmd /c ping -n 3 -w 1000 157.59.0.1")
Do While Not objExecObject.StdOut.AtEndOfStream
strText = objExecObject.StdOut.ReadLine()
If Instr(strText, "Reply") > 0 Then
Wscript.Echo "Reply received."
Exit Do
End If
Loop
Run Code Online (Sandbox Code Playgroud)
(我的改编):
Set objShell = WScript.CreateObject("WScript.Shell")
Set objExecObject = objShell.Exec("cmd /c substr")
strText = ""
Do While Not objExecObject.StdOut.AtEndOfStream
strText = strText & objExecObject.StdOut.ReadLine()
Loop
Wscript.Echo strText
Run Code Online (Sandbox Code Playgroud)
然后我可能会搜索告诉D驱动器映射位置的字符串.我也试过objShell.Exec("subst")
,但我仍然没有得到任何输出.有没有人对我可能做错了什么有任何想法?或者有更好的方法来说明驱动器映射吗?谢谢,
213897
我试过没有运气的.NET反射器.这是主要方式吗?
我知道(jvm)启动选项让jvm等到调试器连接 - 这不是我的意思.
是否有可能从Java代码中检测调试器的附件,以便我可以编写一个"脚本"来做一些事情,然后在某一点使我的应用程序等待调试器?
我的问题很简单.我们通常通过声明一个指针然后为该指针分配一块内存来分配内存.假设代码中的某个地方我碰巧使用了
ptr = ptr + 1
然后我用
free(ptr)
谁能说出会发生什么.整个内存块将被取消分配或其他内容.我可以部分解除内存吗?
Lucas -Lehmer 素性测试测试素数以确定它们是否也是梅森素数。瓶颈之一是计算中的模运算(s**2 \xe2\x88\x92 2) % (2**p - 1)
。
使用按位运算可以大大加快速度(请参阅 LL 链接),迄今为止我所拥有的最好的是:
\n\ndef mod(n,p):\n """ Returns the value of (s**2 - 2) % (2**p -1)"""\n Mp = (1<<p) - 1\n while n.bit_length() > p: # For Python < 2.7 use len(bin(n)) - 2 > p\n n = (n & Mp) + (n >> p)\n if n == Mp:\n return 0\n else:\n return n\n
Run Code Online (Sandbox Code Playgroud)\n\n一个简单的测试用例是p
具有 5-9 位数字和s
10,000 多个数字(或更多;它们是什么并不重要)。解决方案可以通过 进行测试 …
我尝试使用以下代码禁用菜单组,但它不起作用,菜单项仍然启用.你能告诉我有什么问题吗?
RES /菜单/ menu.xml文件:
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/a" android:title="A"></item>
<item android:id="@+id/b" android:title="B">
<menu>
<item android:id="@+id/c" android:title="C" />
<item android:id="@+id/d" android:title="D" />
<group android:id="@+id/group_1">
<item android:id="@+id/e" android:title="E" />
<item android:id="@+id/f" android:title="F" />
</group>
</menu>
</item>
</menu>
Run Code Online (Sandbox Code Playgroud)
Java的:
public boolean onPrepareOptionsMenu (Menu menu) {
menu.setGroupEnabled (R.id.group_1, false); // does not work
menu.setGroupVisible (R.id.group_1, false); // does not work either
return super.onPrepareOptionsMenu (menu);
}
public boolean onCreateOptionsMenu (Menu menu) {
getMenuInflater ().inflate (R.menu.menu, menu);
return true;
}
Run Code Online (Sandbox Code Playgroud) 我只是尝试创建这个简单的实现:
class Test
{
private int abc = 0;
public class TestClass
{
private void changeABC()
{
abc = 123;
}
}
}
Run Code Online (Sandbox Code Playgroud)
如果我编译它,它会抱怨:
无法通过嵌套类型"B.Test.TestClass"访问外部类型"A.Test"的非静态成员
我不喜欢设置的解决方案: static int abc = 0;
还有其他解决方案吗?
我有一个xml响应,我需要设置为一个数组.问题是我需要访问每个元素并将其存储在一个数组中,以便我可以将它用于tableview.
<?xml version="1.0" encoding="UTF-8"?>
<Response xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://schema.2sms.com/2.0/schema/0310_ResponseReportStandard.xsd" Version="1.0">
<Error>
<ErrorCode>00</ErrorCode>
<ErrorReason>OK</ErrorReason>
</Error>
<ResponseData>
<Identification>
<UserID>jonathan.pink@2sms.com</UserID>
</Identification>
<Result>2 records were returned</Result>
<Detail>
<ReportTitle>Message Summary: Today</ReportTitle>
<Record>
<Destination>447790686158</Destination>
<Status>WithNetwork</Status>
<GUID><![CDATA[2011-03-22T10:54:22.097Z]]></GUID>
<DateSubmitted>2011-03-22T10:54:22.097</DateSubmitted>
<DateToSend></DateToSend>
<DateSent>2011-03-22T10:54:22.533</DateSent>
<DateReceived></DateReceived>
<Message><![CDATA[Yet again another test]]></Message>
<ID>2011-03-22 10:54:22.250HIHIIOJTFVETW85TS</ID>
</Record>
<Record>
<Destination>447790686158</Destination>
<Status>SUCCESS</Status>
<GUID><![CDATA[2011-03-22T10:50:40.064Z]]></GUID>
<DateSubmitted>2011-03-22T10:50:40.063</DateSubmitted>
<DateToSend></DateToSend>
<DateSent>2011-03-22T10:50:42.473</DateSent>
<DateReceived>2011-03-22T10:50:54.570</DateReceived>
<Message><![CDATA[This is a test]]></Message>
<ID>2011-03-22 10:50:40.210DRUDVMCEZGETW85TS</ID>
</Record>
<ReportPage ReportID="775797" ItemsPerPage="25" Page="1" TotalItems="2" />
</Detail>
</ResponseData>
</Response>
Run Code Online (Sandbox Code Playgroud)
我已经初始化了TBXML对象但无法弄清楚如何获取任何重复信息,我知道它需要某种循环,但我对objective-c很新,所以它证明了一个挑战.
我需要<destination> , <status>, <datesent>, <message>
从xml中获取.最多可以有25条记录......
希望有人能帮助我一整天都在努力!
最简单的方法是什么?
我很难理解并且没有足够的时间来正确地花费和研究Greasemonkey,只是将永久的css更改应用到任何网站.
我认为这更容易,只需添加一个可以保留浏览器的CSS.但是我没有找到任何简单/快速的工具自定义来添加一个简单的.css文件来进行我的更改.
例如,我想重温Twitter,因为我讨厌新的设计,它正在杀死我想拥有的任何图形个性化.
我需要它简单,因为我想让那些没有高科技知识的人能够获得我的个性化,实现它并且也能做到.
我知道这可能存在安全问题,但我想要做的就是添加一块CSS,而不是额外的Javascript功能.
编辑:可能在所有浏览器中都可以使用,不仅仅是Chrome和Firefox(我知道可能不存在,但我想为使用IE的用户提供替代方案)
我是一名专家网页设计师,但我不是程序员.在Javascript之外我不编写任何其他内容.
c# ×2
java ×2
wpf ×2
.net ×1
android ×1
c ×1
cocoa-touch ×1
css ×1
debugging ×1
ios ×1
ios4 ×1
iphone ×1
menu ×1
metadata ×1
modulo ×1
nested-class ×1
objective-c ×1
optimization ×1
primes ×1
python ×1
silverlight ×1
subst ×1
vbscript ×1
windows ×1
xaml ×1