我使用了一个可序列化的简单类.它有一个反序列化的构造函数:
protected MyClass(SerializationInfo info, StreamingContext context)
Run Code Online (Sandbox Code Playgroud)
和一个用于序列化的GetObjectData方法.它工作正常.
现在我添加了两种方法来监控反序列化:
[OnDeserializing()]
internal void OnDeserializingMethod(StreamingContext context)
{
System.Diagnostics.Trace.WriteLine("OnDeserializingMethod: " + this.GetType().ToString());
}
[OnDeserialized()]
internal void OnDeserializedMethod(StreamingContext context)
{
System.Diagnostics.Trace.WriteLine("OnDeserializedMethod: " + this.GetType().ToString());
}
Run Code Online (Sandbox Code Playgroud)
并且想知道这些方法的调用顺序.现在,在调用构造函数之前调用这两个方法.这怎么可能,为什么在调用(反序列化)构造函数后调用的"OnDeserialized"方法不被调用?如何在执行任何构造函数之前调用(非静态)方法?(我使用的是BinaryFormatter)
Visual Studio 2010中的宏无法再启动.它们没有在宏IDE的第一行中遇到断点.没有错误消息.仍然可以记录宏,代码显示在宏IDE中,但新录制的宏也无法启动.宏文件中没有错误,至少错误列表中没有显示错误.如果我故意添加错误,错误将显示在错误列表中.
我启动宏时有一个短的光标更改,但没有其他任何事情发生,并且输出视图中没有输出.看起来有一个设置或选项阻止宏运行,但我找不到任何这样的设置.我在第二台计算机(在同一网络上)遇到同样的问题,所以可能有一些Windows(7)更新导致了问题.我在过去经常使用宏而没有任何问题,并且最近没有更改宏代码.
有人遇到过同样的问题吗?
我使用一个简单的水平LinearLayout将3个按钮放在一起,宽度相同.我通过以下xml文本实现此目的:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/activity_vertical_margin"
android:baselineAligned="false" >
<Button
android:id="@+id/help"
style="android:buttonBarButtonStyle"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/help" />
<Button
android:id="@+id/close"
style="android:buttonBarButtonStyle"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/closemultigame" />
<Button
android:id="@+id/ok"
style="android:buttonBarButtonStyle"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/restartmultigame" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
现在布局看起来像这样:
按钮layout_height定义为wrap_content,但最右边的按钮不包含其内容.它在不同的设备上看起来不同,有些看起来不错.我实际想要实现的是三个按钮,相同的宽度和相同的高度,每个按钮的文本水平和垂直居中.你会提出什么方法?
增加:按要求的整个布局:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="@dimen/activity_horizontal_margin" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:drawableLeft="@drawable/matchandfit"
android:drawablePadding="@dimen/activity_horizontal_margin"
android:gravity="center_vertical"
android:padding="@dimen/activity_horizontal_margin"
android:text="@string/multigameover"
android:textAppearance="?android:attr/textAppearanceLarge" />
<TextView
android:id="@+id/status"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:text="@string/multigameresult"
android:textAppearance="?android:attr/textAppearanceMedium" />
<LinearLayout
android:id="@+id/masterresult"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/masterresultinfo" …
Run Code Online (Sandbox Code Playgroud) 我的托管.net应用程序使用第三方.net库,它使用(通过PInvoke)非托管dll.我想知道哪些dll被加载了.我尝试使用"Process Explorer"和"Dependency Walker",但我只能看到托管的DLL.
我所有C#文件的第一个声明是" using System; ".现在使用框架版本4,此命名空间包含一个名为"Action"的类.这也是我在常用命名空间中使用自己代码的类的名称.现在有一个冲突.当然,我可以通过使用显式的"MyNamespace.Action"解决这个冲突,我之前使用过"Action".这是数百甚至数千行.或者我无法使用System命名空间,这当然会导致许多其他问题.我想写一些类似"使用System但不是System.Action"的内容,但我找不到这样做的声明.有任何想法吗?
我正在寻找一个正则表达式模式,将"15 + 15/22 - 16/33.0"更改为"15 + 15/22.0 - 16/33.0"(将除法除以整数除以浮点).我到目前为止的尝试:
string test = "15 + 15/22 - 16/33.0";
Regex regex = new Regex(@"(/[0-9]+[^\.])", RegexOptions.None);
test = regex.Replace(test, "$1.0");
Run Code Online (Sandbox Code Playgroud)
返回结果"15 + 15/22 .0- 16/33.0.0"
,其中"22. 0"中的空格以".0.0"结尾,这不是我所期望的.谁能做得更好?
我的应用程序偶尔发布一个简短的通知,无论是通过TextToSpeech
还是使用MediaPlayer
.如果在某些应用程序中使用的话可能会在后台运行其他音乐MediaPlayer
,我想暂停这段音乐片刻,然后在我宣布恢复播放"背景音乐"之后.
有办法吗?
这个非常简单的html文件
<!DOCTYPE html>
<html>
<head>
<title>My Page</title>
</head>
<body>
<h1>Header</h1>
<p>Paragraph with some text. Paragraph with some text. Paragraph
with some text. Paragraph with some text. Paragraph with some text.</p>
Label: <input type="text"> <br />
<input type="submit" value="Button">
<p>Paragraph with some text. Paragraph with some text. Paragraph
with some text. Paragraph with some text. Paragraph with some text.</p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
显示在 android 4.1.2 上的谷歌浏览器中,“标签:”和输入字段的字体非常小。
如何使标签和段落具有相同的字体大小?
即使我为所有部分(标签和输入用“p”包裹)指定style="font-size: 24px"标签和输入仍然以小得多的字体大小出现。你可以在这里测试:link to the above html
PS在两个“p”中放置较少的文字使其正常工作。