我有一个非常简单的Windows窗体应用程序.而且,在Windows(或至少Windows窗体应用程序)中,当您在单行TextBox控件中按Enter时,您会听到一个丁.这是一种不愉快的声音,表示你无法输入换行符,因为它是一个单行的TextBox.
这一切都很好.但是,在我的表单中,我有1个TextBox和一个搜索按钮.而且我允许用户按Enter键,他们已经完成录入后进行搜索,所以他们不具备使用鼠标点击搜索按钮.
但是这个丁声就出现了.这很烦人.
我们如何才能使声音在我的表格中根本不发挥?
@David H - 这是我如何检测输入按下:
private void textBox1_KeyUp(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
// Perform search now.
}
}
Run Code Online (Sandbox Code Playgroud) 我在这里为一个客户制作了一个应用程序,但有时他不知道订单是否已经到达,因为他以最大音量播放魔兽世界.但他表示,如果新订单到货,他希望我的小通知窗口显示在他的游戏的顶部.
所以,我认为我可以使用BringToFront();哪个似乎在全屏应用程序最大化时起作用.但是,我注意到,在全屏播放V8超级跑车的同时,BringToFront();并未将通知窗口带到游戏顶部,因此我认为某些游戏有另一种方式可以确保它们保持在其他所有位置.
我怎样才能确保每当我需要看到我的表格时,它总会显示出其他任何东西?
所以,我被要求重新设计几年前我写的旧应用程序.
基本上,没有什么需要改变,除了客户希望它更流畅,它必须是全屏(没有可见的"窗口")即没有Titlebar,只是一个无边框全屏窗口.
什么是确保一切都保持流畅的最佳方法,我的意思是我们如何确保一切都出现在它应该的位置,因为你知道,不同的分辨率,显示器尺寸等?
这在网页/ CSS中很容易,但这不是我以前做过的.大多数控件将在运行时以编程方式创建,具体取决于执行的操作等.我将如何完成这样的布局?基本上我希望能够全屏显示,不知道他们的显示器有多大,或者他们使用的是什么分辨率.
我知道这意味着什么,我搜索了Google和MSDN.但是,我怎么能绕过这个呢?
我在App_Code文件夹中的razor代码中有一个函数(使用WebMatrix),我从数据库中获取信息,进行一些计算,然后用新的总数更新数据库.
但是,如果它不允许我将变量传递给App_Code文件夹中的方法?
这是我得到的:
EditQuantity.cshtml(根文件夹):
try
{
Base baseClass;
baseClass.CalculateTotalPriceInCart(Request.QueryString["PartNumber"], Request.QueryString["Description"], Session["OSFOID"], true);
Response.Redirect("~/Cart.cshtml");
}
catch(Exception exmes)
{
message = exmes;
}
Run Code Online (Sandbox Code Playgroud)
并且,Base.cs(在App_Code文件夹中):
using System;
using System.Collections.Generic;
using System.Web;
using System.Text;
using WebMatrix.Data;
/// <summary>
/// Summary description for ClassName
/// </summary>
public class Base
{
public void CalculateTotalPriceInCart(var PartNumber, var Description, var OrderId, bool IsBoxed)
{
var database = Database.Open("OSF");
var query = "";
var result = "";
decimal price = 0.00M;
if(IsBoxed)
{
// Select item.
query = …Run Code Online (Sandbox Code Playgroud) 我正在尝试将订单详细信息插入到我的数据库中,它一直在说:
当IDENTITY_INSERT设置为OFF时,无法在表'Orders'中为identity列插入显式值.
我想要做的只是将用户UserId插入UserId列,使用WebSecurity.CurrentUserId- 为什么这不起作用?
我有:
dbase.Execute("INSERT INTO Orders
(UserId, OrderId, Status)
VALUES
(@0, @1, @2)",
WebSecurity.CurrentUserId,
Session["OSFOID"],
"Confirmed");`
Run Code Online (Sandbox Code Playgroud)
所以,正如你所看到的,它非常简单.但是,为什么它不起作用?
我的表定义是:

我试图做一个非常简单的更新,但事实证明非常困难.我不知道发生了什么事; 它只是不更新:
这是我的更新代码:
if(Request.QueryString["Action"] == "Update")
{
var InPage = Request["InPage"];
var PositionInPage = Request["PositionInPage"];
var CategoryName = Request["CategoryName"];
var ImagePath = Request["ImagePath"];
database.Execute("UPDATE Categories SET PositionInPage = " +
PositionInPage + ", InPage = " + InPage +
" WHERE CategoryName = '" + CategoryName +
"' AND ImagePath = '" + ImagePath + "'");
Response.Redirect("~/Fashion.cshtml");
}
Run Code Online (Sandbox Code Playgroud)
这是表单代码:
<form method="post" action="Update.cshtml?Action=Update">
<input type="hidden" name="CategoryName" value="@Request.QueryString["CategoryName"]" />
<input type="hidden" name="ImagePath" value="@Request.QueryString["ImagePath"]" />
<label for="InPage">Move to Page</label>
<input type="text" name="InPage" value="@Request.QueryString["InPage"]" …Run Code Online (Sandbox Code Playgroud) 我有一个客户给我的产品电子表格,我使用Navicat SQL Server插入数据库表 - 他希望将所有定价提高20% - 哪种方式更好,只是在Excel中进行?然后将其插入到数据库中,或者我应该只对列进行SQL查询以增加所有价格,如果是这样,我应该如何将每行值增加20%?