我在Page的viewstate中存储了一个对象.现在,当我在usercontrol上访问相同的viewsate对象时,它显示为null.我甚至尝试在usercontrol和page中创建具有相同名称的相同viewstate.Both拥有不同的值.
我知道viewstate是受保护的属性.这个东西如何在上面的场景中实现,或者是否有任何其他原因导致这种行为.
编辑:
Usercontrol在页面标记中.我没有动态加载它.
我有一个页面EditFacilityworkType.aspx.在页面上,我有一个usercontrol FacilityWorkTypeDetails.aspx(FacilityWorkTypeDetails1).在这个usercontrol里面我有一个用户控件Workflow.aspx(Workflow1)
Page的Page_Load()我正在页面的page_load()上检索workflowdetails.
FacilityWorktype facilityWorkType = facilityDetails.GetFacilityWorktypeDetail(SessionHelper.FacilityWorkTypeID);
ViewState["WorkFlow"] = facilityWorkType.FacilityWorkTypeWorkFlow
Run Code Online (Sandbox Code Playgroud)
在usercontrol FacilityWorkTypeDetails.aspx中.我有一个房产
public FacilityWorktype FacilityWorkTypeDetails
{
get
{
#region Fill FacilityWorktype
return GetEntityFromControl();
#endregion
}
set
{
PopulateControls(value);
}
}
Run Code Online (Sandbox Code Playgroud)
现在我在页面的页面加载中设置此属性
FacilityWorkTypeDetails1.FacilityWorkTypeDetails = facilityWorkType;
Run Code Online (Sandbox Code Playgroud)
在Workflow.aspx里面,我有一个属性
/// <summary>
/// Property to fill entity object from controls on this page
/// </summary>
public WorkFlow WorkFlowDetails
{
get
{
return GetEntityFromControls();
}
set
{
BindTranscriptionMethodDDL(ddlTranscMethod);
PopulateControls(value);
}
}
Run Code Online (Sandbox Code Playgroud)
现在是FacilityWorkTypeDetails1的PopulateControls(),我正在设置workflow1的属性
private void PopulateControls(FacilityWorktype value){
Workflow1.WorkFlowDetails = value.FacilityWorkTypeWorkFlow;
}
Run Code Online (Sandbox Code Playgroud)
现在当我从中检索值时
private …Run Code Online (Sandbox Code Playgroud) 我有一个winforms application.Winforms开始于Program.cs我们有main()定义.我已将此代码放在try-catch块中.
[STAThread]
static void Main()
{
try
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new frmSplash());
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
if (ex.InnerException != null)
{
MessageBox.Show(ex.InnerException.ToString());
}
}
}
Run Code Online (Sandbox Code Playgroud)
只要有win32异常,此机制就会失败,并且抛出未处理的异常消息并且应用程序崩溃.
关于此代码我有2个问题:
1)为什么没有抓住win32异常.
2)在最高级别捕获异常是一种好的做法.
为什么
Convert.ToBoolean("1")
Run Code Online (Sandbox Code Playgroud)
扔一个System.FormatException?
我应该如何进行此转换?
我有一个用户控件来处理fileupload.我已经定义了一个委托如下
public delegate void FileUploadSuccess<T>(T value,FileUploadType F)
Run Code Online (Sandbox Code Playgroud)
value可以是字符串也可以是字节数组.FileUploadType是一个枚举,它告诉上传了哪种类型的文件.
现在我在usercontrol中声明了一个事件来提高它.
public event FileUploadSuccess<string> successString; //In case I want a file name
public event FileUploadSuccess<Byte[]> successStringImage; // In case I want a byte[] of uploaded image
Run Code Online (Sandbox Code Playgroud)
我想要的是一般事件
public event FileUploadSuccess<T> successString.
Run Code Online (Sandbox Code Playgroud) 在下面指定的代码中使用&运算符有什么用处.使用&而不是"AND"有什么好处.请详细说明.
CASE ( C.[Status] & F.[Status] & D.[Status] & DWT.[Status] & P.[Status] )
WHEN 1
THEN CASE ( C.IsDeleted & F.IsDeleted & D.IsDeleted & P.IsDeleted )
WHEN 0 THEN NULL
ELSE 7
END
ELSE 6
END
Run Code Online (Sandbox Code Playgroud) 谁能告诉我以下连接字符串之间的有效区别:
<add key="ConnectionString" value="server=tcp:192.168.0.12\Sqlserver2005;database=;user id=sa;password=;">
<add key="ConnectionString" value="server=192.168.0.12\Sqlserver2005;database=;user id=sa;password=;Network Library=DBMSSOCN;">
Run Code Online (Sandbox Code Playgroud)
我相信两者都是一样的.指定"网络库= DBMSSOCN"使用TCPIP显式连接,并且前缀服务器值与TCP做同样的事情.
请告诉我在web.config中指定这些设置是否存在任何差异或性能影响.
我希望在特定变量的值发生变化时切换按钮的可见性.有没有办法将某种委托附加到一个变量,该变量在值变化时自动执行?
我有一些代码在用户选择下拉列表中的项目时触发.现在,我想以编程方式设置selectedindex时触发相同的代码.
我试过设置
ddlSystemLevelDCP.SelectedIndex=2;
Run Code Online (Sandbox Code Playgroud)
这也是
ddlSystemLevelDCP.SelectedValue="2";
Run Code Online (Sandbox Code Playgroud)
他们都没有发动这件事.但是,当用户更改选择时,将触发此事件.