我想知道CPython和Python之间的区别,因为我听说Python是用C语言开发的 - 那么CPython的用途是什么?
我在视图中有以下代码
<% foreach (var item in Model.stats)
{%>
<label style="style="float:left;"><%= item.Stat_Caption %></label>
<%=Html.TextBox(item.Stat_Caption,item.Stat_Value) %>
<%} %>
Run Code Online (Sandbox Code Playgroud)
我正在尝试将我的stats对象(只是一个列表集合)转换为文本框列表,以便用户可以更新它们.
我有工作,如果用户更新文本框,我如何将值应用回列表集合?
我编写了以下代码用于某些测试,输出超出了我的预期.
public enum Days { Saturday, Sunday, Monday, Tuesday, Wednesday, Thursday, Friday };
Console.WriteLine(typeof(System.Enum).IsValueType.ToString()); // False
Console.WriteLine(typeof(Days).IsValueType.ToString()); // True
Run Code Online (Sandbox Code Playgroud)
所以我用Reflector检查Type.IsValueType属性的实现.这是:
public bool get_IsValueType()
{
return this.IsValueTypeImpl();
}
protected virtual bool IsValueTypeImpl()
{
Type type = this;
return (((type != valueType) && (type != enumType)) && this.IsSubclassOf(valueType));
}
Run Code Online (Sandbox Code Playgroud)
在MSDN中,System.Enum定义为:
[SerializableAttribute]
[ComVisibleAttribute(true)]
public abstract class Enum : ValueType, IComparable,
IFormattable, IConvertible
Run Code Online (Sandbox Code Playgroud)
那么为什么IsValueType以这种方式实现呢?为什么检测到enumType?
好的,下面是一些演示问题的示例代码.如果我点击Firefox中的按钮,第一个选项就会消失.如果我点击chrome中的按钮,没有任何反应,或者更确切地说,如果我检查第一个选项,它确实具有属性"style ='display:none'",但html页面上的选项本身并未隐藏.
<form>
<select>
<option>1</option>
<option>2</option>
<option>3</option>
</select>
<input type="button" onclick="document.getElementsByTagName('option')[0].style.display='none'" value="hide option 1">
</form>
Run Code Online (Sandbox Code Playgroud)
为什么这不适用于chrome?
这可能是一种寻求帮助的非常规方式,但我的代码遇到了空指针运行时错误,但运行时错误的范围太大而无法发布到stackoverflow.我真的想弄清楚这一点,所以我可以通过电子邮件向你们中的一个人发送我的代码来找出问题所在吗?我知道运行时错误告诉它正在绊倒的特定行号,但老实说,我不能做出正面或反面的原因.非常感谢你!!
堆栈跟踪:
java.lang.NullPointerException
at Maze.getNumRandOccupants(Maze.java:118)
at P4TestDriver.testMaze(P4TestDriver.java:995)
at P4TestDriver.main(P4TestDriver.java:116)
at __SHELL8.run(__SHELL8.java:7)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at bluej.runtime.ExecServer$3.run(ExecServer.java:814)
java.lang.NullPointerException
at Maze.addRandomOccupant(Maze.java:130)
at P4TestDriver.testMazeReadWrite(P4TestDriver.java:1071)
at P4TestDriver.main(P4TestDriver.java:127)
at __SHELL8.run(__SHELL8.java:7)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at bluej.runtime.ExecServer$3.run(ExecServer.java:814)
Run Code Online (Sandbox Code Playgroud) 是否可以使用如下语法将事件从内部对象实例委托给corrent对象的事件处理程序:
public class MyControl {
public event EventHandler Finish;
private Wizard wizard;
public MyControl( Wizard wizard ) {
this.wizard = wizard;
// some other initialization going on here...
// THIS is what I want to do to chain events
this.wizard.Finish += Finish;
}
}
Run Code Online (Sandbox Code Playgroud)
上述结构的动机是我有许多类似向导的UI流程,并希望将Back,Forward和Cancel处理分离到单个类,以在我的设计中尊重Open Closed Principle和Single Responsibility Principle.
添加方法OnFinish并进行正常检查总是有可能的,但是如果有很多嵌套事件,那么最终将会有大量的样板代码.
我希望通过在应用程序中存储视频来在本地播放iphone上的视频.我能怎么做?
我试图在ASP .NET应用程序中使用WebBrowser控件:
public BrowserForm()
{
webBrowser1 = new WebBrowser();
webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser1_DocumentCompleted);
}
private void webBrowser1_DocumentCompleted(Object sender, WebBrowserDocumentCompletedEventArgs e)
{
// code here
}
Run Code Online (Sandbox Code Playgroud)
但得到错误:
'8856f961-340a-11d0-a96b-00c04fd705a2'无法实例化,因为当前线程不在单线程单元中
然后我做了这样的事情:
public BrowserForm()
{
ThreadStart ts = new ThreadStart(StartThread);
var t = new Thread(ts);
t.SetApartmentState(ApartmentState.STA);
t.Start();
}
[STAThread]
public void StartThread()
{
webBrowser1 = new WebBrowser();
webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser1_DocumentCompleted);
}
[STAThread]
private void webBrowser1_DocumentCompleted(Object sender, WebBrowserDocumentCompletedEventArgs e)
{
//code here
}
Run Code Online (Sandbox Code Playgroud)
但仍然没有按照我的意愿为我工作......给我一些错误的错误:
错误HRESULT E_FAIL已从调用COM组件返回
任何工作?我不是线程或COM的专家,但是尝试将WindowApplication转换为WebApplication,它使用网页的屏幕截图提供了一个URL.:(
我正在用许多不同的语言编写一个键值存储API(如ODBC,只是接口,而不是底层存储),虽然我不想在语言之间音译API,但我不希望例如从Java存储值作为"null",然后用另一种不支持null概念的语言读取它.我不确定我是否这么好解释,但它是我第一次尝试:)
见:
关于键值存储API的讨论
UML中协作图和通信图有什么区别?它们是相同的图表吗?
c# ×3
.net ×2
api ×1
asp.net ×1
asp.net-mvc ×1
coding-style ×1
firefox ×1
iphone ×1
java ×1
javascript ×1
null ×1
objective-c ×1
python ×1
type-systems ×1
types ×1
uml ×1