Пример #1
0
        private void SetThreadData(掲示板リターンデータセット rdataset)
        {
            pn.Controls.Clear();

            foreach (var data in rdataset.掲示板データ)
            {
                foreach (var data2 in data)
                {
                    var 投稿Ent = data2.Key;

                    DateTime dt;
                    if (DateTime.TryParse(投稿Ent.投稿日, out dt) == false)
                    {
                        dt = new DateTime();
                    }



                    string html =
                        "<table width=\"100%\" class=\"tbContribute\">" +

                        //投稿
                        "<tr>" +
                        "<td colspan=\"5\">"
                        + "<span class=\"MainNo\">" + 投稿Ent.No + "  " + "</span>"
                        + "<span class=\"MainTitle\">" + 投稿Ent.Title + " " + "</span>"
                        + "<span class=\"MainPersonNameHeader\">投稿者名:</span>" + "<span class=\"MainPersonName\">" + 投稿Ent.投稿者名 + " " + "</span>";

                    pn.Controls.Add(new LiteralControl(html));


                    if (投稿Ent.HomepageUrl != "http://" && 投稿Ent.HomepageUrl != "")
                    {
                        Image img = new Image();
                        img.ImageUrl = "~/Images/Icon/homepage.png";
                        img.Width    = 15;
                        img.Height   = 15;
                        LinkButton lb = new LinkButton();
                        lb.PostBackUrl = 投稿Ent.HomepageUrl;
                        lb.Controls.Add(img);
                        pn.Controls.Add(lb);
                    }

                    string html10 = " "
                                    + "<span class=\"MainDateHeader\">投稿日:</span>" + "<span class=\"MainDate\">" + dt.ToString("yyyy/MM/dd HH:mm:ss") + "  " + "</span>" +
                                    "</td>" +
                                    "<td align=\"right\">";
                    pn.Controls.Add(new LiteralControl(html10));

                    string 記事No = 投稿Ent.No.Replace("No:", "");

                    返信用Button b = new 返信用Button(記事No, 投稿Ent.Title);
                    b.Text   = "返信";
                    b.ID     = "hn" + 投稿Ent.カテゴリ名 + 記事No;
                    b.Click += new EventHandler(btn返信_Click);
                    pn.Controls.Add(b);

                    string 記事ColorCode = Convert文字色ToColorCode(投稿Ent.文字色);

                    string html2 =
                        "</td>" +
                        "</tr>" +
                        "<tr>" +
                        "<td colspan=\"6\" style=\"padding:10px 0px 0px 50px;color:" + 記事ColorCode + ";\">" + 投稿Ent.記事.Replace("\n", "<br/>");



                    if (投稿Ent.添付ファイルlist.Count() != 0)
                    {
                        html2 += "<br/><br/><br/>";
                    }

                    pn.Controls.Add(new LiteralControl(html2));

                    int counter = 1;
                    foreach (var ls in 投稿Ent.添付ファイルlist)
                    {
                        ダウンロード用LinkButton lkb = new ダウンロード用LinkButton(投稿Ent.No.Replace("No:", ""), ddlスレッド選択.SelectedValue);
                        lkb.ID     = "dl" + 投稿Ent.カテゴリ名 + 記事No + counter;
                        lkb.Click += new EventHandler(lkbDownLoad_Click);
                        lkb.Text   = ls;
                        lkb.Style.Add(HtmlTextWriterStyle.FontSize, "12px");
                        pn.Controls.Add(lkb);

                        string html3 =
                            "<br/>";

                        pn.Controls.Add(new LiteralControl(html3));

                        counter++;
                    }

                    string html4 =
                        "</td>" +
                        "</tr>" +
                        "<tr>" +
                        "<td><br/></td>" +
                        "</tr>";

                    // 返信があれば水平線を入れる
                    if (1 <= data2.Value.Count())
                    {
                        html4 += "<tr>" +
                                 "<td colspan=\"6\">" +
                                 "<hr />" +
                                 "</td>";
                    }


                    pn.Controls.Add(new LiteralControl(html4));

                    foreach (var 返信ent in data2.Value)
                    {
                        DateTime dt2;
                        if (DateTime.TryParse(返信ent.投稿日, out dt2) == false)
                        {
                            dt2 = new DateTime();
                        }



                        string html5 =
                            // 返信
                            "<tr >" +
                            "<td colspan=\"6\" style=\"padding:20px 0px 0px 50px\">"
                            + "<span class=\"SubNo\">" + 返信ent.No + "  " + "</span>"
                            + "<span class=\"SubTitle\">" + 返信ent.Title + " " + "</span>"
                            + "<span class=\"SubPersonNameHeader\">投稿者名:</span>" + "<span class=\"SubPersonName\">" + 返信ent.投稿者名 + " " + "</span>";

                        pn.Controls.Add(new LiteralControl(html5));

                        if (返信ent.HomepageUrl != "http://" && 返信ent.HomepageUrl != "")
                        {
                            Image img = new Image();
                            img.ImageUrl = "~/Images/Icon/homepage.png";
                            img.Width    = 15;
                            img.Height   = 15;
                            LinkButton lb = new LinkButton();
                            lb.PostBackUrl = 返信ent.HomepageUrl;
                            lb.Controls.Add(img);
                            pn.Controls.Add(lb);
                        }

                        string 記事ColorCode2 = Convert文字色ToColorCode(返信ent.文字色);

                        //+ (返信ent.HomepageUrl == "http://" ? "" : 返信ent.HomepageUrl) + "   "
                        string html9 = "   " +
                                       "<span class=\"SubDateHeader\">投稿日:</span>" + "<span class=\"SubDate\">" + dt2.ToString("yyyy/MM/dd HH:mm:ss") + "  " + "</span>" +
                                       "</td>" +
                                       "</tr>" +
                                       "<tr>" +
                                       "<td colspan=\"6\" style=\"padding:20px 0px 0px 105px;color:" + 記事ColorCode2 + ";\">" + 返信ent.記事.Replace("\n", "<br/>");

                        if (返信ent.添付ファイルlist.Count() != 0)
                        {
                            html9 += "<br/><br/><br/>";
                        }

                        pn.Controls.Add(new LiteralControl(html9));

                        string 記事No2    = 返信ent.No.Replace("No:", "");
                        int    counter2 = 1;
                        foreach (var ls in 返信ent.添付ファイルlist)
                        {
                            ダウンロード用LinkButton lkb = new ダウンロード用LinkButton(記事No2, ddlスレッド選択.SelectedValue);
                            lkb.ID     = "dl" + 投稿Ent.カテゴリ名 + 記事No2 + counter2;
                            lkb.Click += new EventHandler(lkbDownLoad_Click);
                            lkb.Text   = ls;
                            lkb.Style.Add(HtmlTextWriterStyle.FontSize, "12px");

                            pn.Controls.Add(lkb);

                            string html6 =
                                "<br/>";

                            pn.Controls.Add(new LiteralControl(html6));

                            counter2++;
                        }

                        string html7 =
                            "</td>" +
                            "</tr>" +
                            "<tr>" +
                            "<td><br/></td>" +
                            "</tr>";

                        pn.Controls.Add(new LiteralControl(html7));
                    }

                    string html8 = "</table>";
                    pn.Controls.Add(new LiteralControl(html8));
                }
            }

            // 表示しているページ番号をセッションに保存
            Session["PageNumber"] = rdataset.作成グループNo;
            SetPageSelector(rdataset);
            Session["MaxPageNumber"] = (int)Math.Ceiling((double)rdataset.メイン記事数 / 10);

            //Session["Panel"] = pn;
        }
Пример #2
0
        void lkbDownLoad_Click(object sender, EventArgs e)
        {
            ダウンロード用LinkButton lkb      = sender as ダウンロード用LinkButton;
            string            FileName = lkb.Text;

#if DEBUG
            // ダウンロードテスト用
            string URL = "http://www.kusurinonakayama.jp/PharmacyTool/ClientBin/掲示板資料/全般/1015/11032601.PDF";
#elif NAKAYAMA
            string URL = "http://www.kusurinonakayama.jp/PharmacyTool/ClientBin/掲示板資料/" + lkb.スレッド名 + "/" + lkb.投稿ID + "/" + lkb.Text;
#else
            // ダウンロードテスト用
            string URL = "http://www.kusurinonakayama.jp/PharmacyTool/ClientBin/掲示板資料/全般/1015/11032601.PDF";
#endif
            Response.Redirect(URL);

            #region スニペット
            //            ダウンロード用LinkButton lkb = sender as ダウンロード用LinkButton;
            //            string FileName = lkb.Text;

            //            string MIMETYPE = null;

            //            var sepa = FileName.Split('.');
            //            if (sepa.Count() != 0)
            //            {
            //                MIMETYPE = MIMETYPE_DIC[sepa[sepa.Count() - 1].ToLower()];
            //            }
            //            else
            //            {
            //                MIMETYPE = MIMETYPE_DIC["exe"];
            //            }

            //            string FilePathBase = null;

            //#if DEBUG
            //            FilePathBase = PharmacyToolMobile.Properties.Settings.Default.Upload掲示板FileRootPathDEBUG;

            //#elif NAKAYAMA
            //            FilePathBase = PharmacyToolMobile.Properties.Settings.Default.Upload掲示板FileRootPathNAKAYAMA;
            //#else
            //            FilePathBase = PharmacyToolMobile.Properties.Settings.Default.Upload掲示板FileRootPathDEBUG;
            //#endif
            //            if (FilePathBase == null)
            //            {
            //                throw new Exception("FilePathBaseが指定されていません。");
            //            }

            //            string FilePath = Path.Combine(FilePathBase, (lkb.スレッド名 + "\\" + lkb.投稿ID + "\\" + lkb.Text));

            //            //if (FilePath == "")
            //            //{
            //            //    return;
            //            //}

            //            //// Response情報クリア
            //            //Response.ClearContent();
            //            //// HTTPヘッダー情報設定
            //            //Response.AddHeader("Content-Disposition", "attachment;filename=①ファイル名");
            //            //Response.ContentType = ②MIME;
            //            //// ファイル書込(データによりResponse.WriteFile()、Response.Write()、Response.BinaryWrite()を使い分ける。)
            //            //Response.WriteFile(sFilePath);
            //            //// レスポンス終了
            //            //Response.End();

            //            Response.ContentType = MIMETYPE;
            //            Response.AddHeader("Content-Disposition", "attachment; filename=" + FileName);
            //            Response.Flush();
            //            Response.WriteFile(FilePath);
            //            Response.End();

            #endregion
        }