zoukankan      html  css  js  c++  java
  • (续)SqlHelper+三层架构 +例子1)复习创建客户和三层的知识+、(例子2)项目初始框架(HRMSys)

    八:员工表的设计(数据绑定) DisplayMemberPath=" "   13401089876
    T_Department Id Name IsStopped
    T_Employee  //很多项目不建外键
    员工表的增删改查
    EditUI
    ListAll()GetById(),Update(),Insert()
    EditingId;IsAddNew;
    window_Load()
    {
     
     新增(默认值的设定),修改判断
     myGrid.DataContent=...
     
    }
    txtSave_Click()
    {
      判断有无空字符串
      新增()
      修改()
    }
    ListUI
    window_Load(){}
    private void LoadData(){}
               //把老师的代码看懂了,只理解了10%

    bool IsOK=true;//数据检验是否通过,每个控件只能投反对票
    if(txtName.TRext.Length<=0)
    {
     IsOK=false;
      txtName.Background=Brushes.Red;     //杨中科:bbs.itheima.com,abount521@163.com,某某申请认证VIP
    }
    //检验是否有空字符串。(反射)
    private void CheckTextboxNotEmpty(ref bool isOK,params TextbOX[] TEXTBOXS){}
    {
      foreach(TextBox txtBox in TEXTBOXS))
     {
       if(txtBox.Length<=0)
       {
         isOK=false;
         txtBox.Background=Brushes.Red;
       }
       else
       {
        txtBox.Background=null;
       }
     }
    }

    九、员工照片的处理
     (1)照片的二进制数据保存在DB
     (2)把img存放至服务器中,img中存放于DB中
    photo: image类型
    在ado.net 对应byte[],放二进制的。
    btnChoosePhoto_Click()
    {
     OpenFileDialog ofd=new....();
     ofd.Filter="....";
     if(ofd.ShowDilog()==true)
     {
      string filename=.....;
      Employee employee=new...;
      employee.Photo=File.ReadAllBytes(filename);//读取文件的二进制数据
      imgPhoto.Source=new BitmapImage(new uri(filename));
     }
    }
    照片在Load时就显示了:
    MemoryStream stream=new MemoryStream (emp.Photo);
    BitmapImage bmpImg=new BitmapImage();
    bmpImg.StreamSource=stream;
    imgPhoto.Source=bmpImg

    十、摄像头给员工拍照:
    第三方开发包,开源组件(WPFMediaKit.dll)
    (1)在xaml中添加类
    (2)VideoCaptureElement显示预览的画面
    <CheckBox name="cb"></CheckBox>
    <wpfedia:VideoCaptureElement name="vce">

    </wpfedia:VideoCaptureElement>
    <button name="btnCapture"></button>
    window_Load()
    {
     //获得摄像头;
     cb.ItemSource=MultimediaUtil.VideoInputNames;
    if(MultimediaUtil.VideoInputNames>0)
    {
     cb.SelectedIndex=0;
    }
    else
    {
    没有摄像头
    }
    }

    cb_SelectionChangeed()
    {
    vce.VideoCaptureSource=(string)cb.selectedItem;
    }

    btnCapture_Click()
    {
    把控件的内容抓取出来
    }
    拍的图片的二进制流


     未完待续。。。。。。

  • 相关阅读:
    gitlab 拉代码提示:Your Account has been blocked. fatal: Could not read from remote repository. 最佳解决方案
    关于C语言开大数组溢出的问题
    三元组转置稀疏矩阵
    传递二维数组
    vue3下把json放哪才能获得get到
    VM下Ubuntu的nat模式连不上wifi
    C3863 不可指定数组类型“int [510]”
    PAT1005 Spell It Right
    PAT1004 Counting Leaves
    PAT1002 A+B for Polynomials
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/2989586.html
Copyright © 2011-2022 走看看