问题描述:在winform中想实现像BS中类似Session的功能,放上需要的信息,在程序中都可以访问到。

解决方案:由于自己很长时间没有做过winform的程序,一时间竟然手足无措起来。后来发现winform实现起来也十分简单。

一、在窗体Form1中创建static 用户类

         /// <summary>
/// 当前登录用户信息
/// </summary>
public static class CurrentUser
{
/// <summary>
/// 用户名
/// </summary>
public static string userName { get; set; } /// <summary>
/// 登录时间
/// </summary>
public static DateTime LoginTime { get; set; } }

在page_load中为它赋值

         private void Form1_Load(object sender, EventArgs e)
{
CurrentUser.userName = "test";
CurrentUser.LoginTime = DateTime.Now;
}

在点击事件中打开新窗体

         private void button1_Click(object sender, EventArgs e)
{
int x = this.Location.X;
int y = this.Location.Y;
this.Hide();
Form2 secondForm = new Form2();
secondForm.Location = new Point(x, y);
secondForm.Show();
}

效果如图:

二、在form2窗体中直接访问静态类的数值即可

         private void Form2_Load(object sender, EventArgs e)
{
this.txtUserName.Text = Form1.CurrentUser.userName;
this.txtLoginTime.Text = Form1.CurrentUser.LoginTime.ToString("yyyy-MM-dd HH:mm:ss");
}

效果:

写在后面的话:其实现在想想,winform并不需要session,因为我的理解中session是保存用户和服务器之间的会话信息,尤其是多用户访问网站时,尤显得重要。但是winform程序类似于单机软件,相当于一个用户对winform程序,也不知道这样理解对不对。对于winform的开发理解得太浅了,有时候会经常把web开发的思路带到winform中,发现其实两者还是有很大差别的。继续要努力学习呢~

winform实现Session功能(保存用户信息)的更多相关文章

  1. session 实现保存用户信息

    index.jsp <body> <div style="margin: 0 auto; width: 500px; text-align: center;"&g ...

  2. php使用session来保存用户登录信息

    php使用session来保存用户登录信息 使用session保存页面登录信息 1.数据库连接配置页面:connectvars.php <?php //数据库的位置 define('DB_HOS ...

  3. django使用session来保存用户登录状态

    先建好登录用的model,其次理解使用cookie和session的原理,一个在本机保存,一个在服务器保存 使用session好处,可以设置登录过期的时间, 编写views中login的函数 def ...

  4. 获得session中的用户信息

    由于每个系统都有往session中放入用户信息以及把用户信息取出来的模块,而且在session中取出用户信息的地方非常之多,所以有必要把session中对用户的操作封装成为一个工具类,以便在以后的使用 ...

  5. Asp.NET MVC 使用 SignalR 实现推送功能二(Hubs 在线聊天室 获取保存用户信息)

    简单介绍 关于SignalR的简单实用 请参考 Asp.NET MVC 使用 SignalR 实现推送功能一(Hubs 在线聊天室) 在上一篇中,我们只是介绍了简单的消息推送,今天我们来修改一下,实现 ...

  6. session保存用户信息

    前台jsp-------------- <%@ page import="com.manager.form.User" %><%User user = reque ...

  7. 10 ~ express ~ 使用 cookie 保存用户 信息

    思维导图: (1) 保存 cookie (2)销毁 cookie 一,保存 cookie 1,app.js  . 新增代码 var Cookies = require('cookies') /** * ...

  8. cas 获取session中的用户信息

    <%Object object =request.getSession().getAttribute("_const_cas_assertion_");Assertion a ...

  9. session中用户信息改变问题

    问题描述: 在web项目中,我们经常将用户登录信息放在session中用来做后续的权限判断等操作,但最近在项目中发现一个奇怪的现象,session中的用户信息和登录时的信息有了差异. 原因: 在后台代 ...

随机推荐

  1. Linux文件服务管理之vsftpd

    简介 vsftpd是 "very secure FTP deamon"的缩写,是一个完全免费,开源的ftp服务器软件. 特点 小巧轻快,安全易用,支持虚拟用户.支持带宽限制等功能. ...

  2. nginx 请求限制

    1.nginx 请求限制 1.连接频率限制 - limit_conn_module 2.请求频率限制 - limit_req_module 连接限制的语法 请求限制的语法 limit_conn_zon ...

  3. linux 挂载磁盘LVM

    最近又有个坑逼任务: 在客户给的三台虚拟机上在安装集群环境,,虚拟机没挂载磁盘 要配置成LV卷:大致理解逻辑之后理解为:LV卷后续方便做扩容 理论参考:https://www.cnblogs.com/ ...

  4. 洛谷P3369 【模板】普通平衡树(FHQ Treap)

    题面 传送门 题解 写了一下\(FHQ\ Treap\) //minamoto #include<bits/stdc++.h> #define R register #define inl ...

  5. freeradius编译安装+mysql配置

    参考文档: freeradius 官网的wikihttp://wiki.freeradius.org/Home ubuntu freeradius搭建教程 http://yustanto.com/fr ...

  6. Shell编程——多命令顺序执行、管道、grep命令

    1.多命令执行符: (1)命令1:命令2    多个命令顺序执行,没有逻辑联系,即使命令1出错,命令2依旧执行. (2)命令1&&命令2:只有命令1正确执行,命令2才能正确执行:命令1 ...

  7. atlassian-confluence - docker安装

    一下内容在centos 7安装成功.一.安装docker 1.yum安装docker12 yum update # 更新yumyum install docker # yum安装docker 2.开启 ...

  8. c++primer(第五版) 阅读笔记_第1章

    一.结构图: 二.代码及练习题 1.1节 编写一个简单的C++程序 1.1节练习 练习1.1: 查阅使用的编译器的文档:我使用的是vs2013,其文档为https://docs.microsoft.c ...

  9. 使用vue搭建应用三引入scss

    Css.Sass.Scss的含义及区别 Css(Cascading Style Sheets) 层叠样式表 Sass(Syntactically Awesome StyleSheets) 是一款强化 ...

  10. cad.net 获取所有已经安装的cad版本信息

    计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\Hardcopy var ackey = Registry.LocalMachine.OpenSubKey(@&quo ...