Exemple #1
0
        ClosingType ClosingStatus = ClosingType.DoNothing; //FormClosingイベントが発生した際の挙動の種類


        /// <summary>
        /// コンストラクタ
        /// </summary>
        /// <param name="userInfo">ログインユーザーのユーザー情報</param>
        /// <param name="callerLocation">呼び出し元の座標</param>
        public MailDestinationForm(UserInfo userInfo, Point callerLocation)
        {
            InitializeComponent();

            var addresInfoList = new List <MailInfo>(); //アドレス情報

            this.MailInfoList = new List <MailInfo>();

            this.UserInfo = userInfo;

            this.Location = callerLocation;

            //アドレス情報取得
            try
            {
                addresInfoList = new MailLogic().GetAddresInfo(this.UserInfo.UserID);
            }
            catch (NpgsqlException)
            {
                MessageBox.Show("アドレス情報の取得に失敗しました。", "お知らせ");
                return;
            }

            var mailLogic = new MailLogic();

            //画面に宛先一覧を表示し、各行にその宛先のアドレス情報を設定
            for (int i = 0; i < addresInfoList.Count; i++)
            {
                dataGridView1.Rows.Add(mailLogic.GenerateAddressName(addresInfoList[i]));
                dataGridView1.Rows[i].Cells[1].Value = false; //チェックボックスの初期値をfalseに設定
                dataGridView1.Rows[i].Cells[0].Tag   = addresInfoList[i];
            }
        }
Exemple #2
0
        /// <summary>
        /// 宛先ボタンクリックイベント
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button1_Click(object sender, EventArgs e)
        {
            string addresName = null; //画面に表示する宛先
            var    mailLogic  = new MailLogic();

            this.Hide();

            //宛先フォームに遷移し、宛先を選択
            var mailDestinationForm = new MailDestinationForm(this.UserInfo, this.Location);

            mailDestinationForm.ShowDialog();

            this.Show();

            if (mailDestinationForm.MailInfoList.Count > 0)
            {
                //宛先フォームで選択した宛先を、メール作成フォームのフィールドに設定
                this.MailInfoList = mailDestinationForm.MailInfoList;

                //送信先のアドレスすべてを連結して一つにする
                for (int i = 0; i < mailDestinationForm.MailInfoList.Count; i++)
                {
                    addresName += mailLogic.GenerateAddressName(mailDestinationForm.MailInfoList[i]);

                    //繰り返し処理の最後の周以外は、文字列にカンマを付け加える
                    if (i < mailDestinationForm.MailInfoList.Count - 1)
                    {
                        addresName += ",";
                    }
                }

                label1.Text = addresName; //送信先のアドレスを表示

                button2.Enabled = true;   //送信ボタンを活性に
            }
            else
            {
                button2.Enabled = false;   //送信ボタンを非活性に
            }
            mailDestinationForm.Dispose(); //宛先フォームのリソースを解放
        }