小编Akh*_*hil的帖子

如何使用NPOI读取文件

我发现NPOI非常适合用C#编写Excel文件.

但我想在C#中打开,阅读和修改Excel文件.

我怎样才能做到这一点?

.net c# excel npoi

72
推荐指数
5
解决办法
15万
查看次数

适用于Google Chrome等多进程C#应用的示例

任何机构都知道Google Chrome等多进程C#应用程序的样本.

感谢帮助.

.net wpf winforms c#-4.0

7
推荐指数
1
解决办法
7436
查看次数

如何在C#Winform中锁定应用程序GUI

可能重复:
如何在后台线程运行时阻止Winforms UI

我正在使用C#WinForm应用程序

我在屏幕上有一个Save按钮,屏幕数据保存到数据库中.

当用户点击按钮应用程序进入数据库并保存数据时会发生什么.这需要一些时间.

但是,如果用户再次单击"保存"按钮,则会触发Click事件,当第一次单击返回主代码(保存数据库后)时,捕获的事件将被触发.

简而言之,当线程从第一个事件返回时,会捕获并触发click事件(我尝试了启用/禁用按钮的方案).

我怎样才能阻止这种行为.

此致,Akhil

@Jalal:我尝试了一些修改后的代码

private readonly object _userActivityLocker = new object();
        private void btnSave_Click(object sender, EventArgs e)
        {
            if (System.Threading.Monitor.TryEnter(_userActivityLocker))
            {
                //note that any sub clicks will be ignored while we are here
                try
                {
                    DateTime dt =  DateTime.Now;
                    Thread.Sleep(2000);
                    Debug.Print("FirstClick {0} Second Click {1}",dt.ToLongTimeString(),  DateTime.Now.ToLongTimeString());
                    //here it is safe to call the save and you can disable the btn
                    Application.DoEvents();
                }
                finally
                {
                    System.Threading.Monitor.Exit(_userActivityLocker);
                    //re-enable the btn if you disable it.
                } …
Run Code Online (Sandbox Code Playgroud)

c# multithreading winforms

5
推荐指数
2
解决办法
5046
查看次数

SqlConnection InfoMessage不使用BeginExecuteNonQuery

我想从SQL存储过程中打印消息.

如果我使用SYNC选项执行cmd.ExecuteNonQuery连接会触发InfoMessage事件,但是当我使用ASYNC选项执行时,不会触发该事件.

在ASYNC执行时,我没有收到事件的原因吗?

这是我的代码:

 class Program
{
     static string connstring =
        "data source = xyz;initial catalog = abc;user id=abc;password=abc;Asynchronous Processing=True";
    static void Main(string[] args)
    {

        SqlConnection conn = new SqlConnection(connstring);

            conn.InfoMessage += new SqlInfoMessageEventHandler(conn_InfoMessage);
            SqlCommand cmd = new SqlCommand("TMP_PROC", conn);
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@TMP_ID", 1);

            try
            {
                Console.WriteLine("connection open");
                conn.Open();
                Console.WriteLine("executing query");
                //cmd.ExecuteNonQuery();
               var result= cmd.BeginExecuteNonQuery(
                    p =>
                    {
                        try
                        {
                            var asyncCommand = p.AsyncState as SqlCommand;
                            Console.WriteLine("Execution Completed");
                        }
                        catch (Exception ex)
                        {
                            Console.WriteLine("Error:::{0}", ex.Message);
                        }
                        finally
                        {
                            conn.Close(); …
Run Code Online (Sandbox Code Playgroud)

c# sql-server ado.net

4
推荐指数
1
解决办法
4076
查看次数

如何将匿名类型作为参数传递给方法?

可能重复:
匿名类的返回类型是什么

我正在使用如下查询创建一个匿名类型:

来电代码:

 var query= from p in _db.ExecuteDataSet(SQL).Tables[0].AsEnumerable()
                        select new {
                                       ProductCode = p.Field<string>("PRODUCT_CODE"),
                                       ProductName = p.Field<string>("PRODUCT_NAME")
                                   };
 foreach(var product in query)
 {
     WriteProduct(product);
 }
Run Code Online (Sandbox Code Playgroud)

方法如下:

void WriteProduct(object prod)
{
  //   access the product
}
Run Code Online (Sandbox Code Playgroud)

我无法获得该WriteProduct方法的正确参数类型.请帮我.

c# linq c#-4.0

3
推荐指数
2
解决办法
5256
查看次数

标签 统计

c# ×4

.net ×2

c#-4.0 ×2

winforms ×2

ado.net ×1

excel ×1

linq ×1

multithreading ×1

npoi ×1

sql-server ×1

wpf ×1