質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
ASP.NET

ASP.NETは動的なWebサイトやWebアプリケーション、そしてWebサービスを構築出来るようにする為、Microsoftによって開発されたウェブアプリケーション開発フレームワークです。

VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

Q&A

解決済

2回答

2101閲覧

ボタン押下時にカレンダー から 選択した日の週カレンダーに切り替える

Beer_Rabbit

総合スコア70

ASP.NET

ASP.NETは動的なWebサイトやWebアプリケーション、そしてWebサービスを構築出来るようにする為、Microsoftによって開発されたウェブアプリケーション開発フレームワークです。

VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

0グッド

0クリップ

投稿2022/04/22 05:34

編集2022/04/22 10:52

言語:VB. NET
ASP.NET Web Forms アプリを Visual Studio 2022 で .NET Framework 4.5 で作っています。

「今週」を押下すると、1週間の日付が今週分のスケジュール表示されます。
また、左右の矢印ボタンを押下することで、前週と来週が表示されます。

今回、「カレンダー」ボタンを追加します。
こちらを押下時に下記のカレンダーが表示され
クリックにより選択された日付の週に切り替えたいと考えております。

(追記)
※この質問を投稿後に、下記カレンダーがTextBox を組み合わせにより使用できる
カレンダーということがわかりました。
カレンダーにはこだわりはございません。やりたいことは指定した日の週に切り替えたいだけです。
具体的なコードではなく、ヒントになる方法などございましたら宜しくお願いします。

イメージ説明

現在、ボタンのみ追加できておりますが、
カレンダー表示と、クリックによる切り替えができておりません。

ご教授のほど何卒よろしくお願いいたします。

VB.NET

1<asp:Button ID="Button1" runat="server" Font-Names="メイリオ" Font-Size="8pt" Text="カレンダー" Height="22px" />

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

dodox86

2022/04/22 05:40

VB.NETはプログラミング言語の名前です。実行環境としてASP.NET(サーバーサイド)なのであれば、開発環境の情報(.NET FrameworkやASP.NET、Visual Studioのバージョン等)などもできるかぎり詳しく述べましょう。タグも適切に追加しましょう。そうすることで詳しい方の目に留まります。
退会済みユーザー

退会済みユーザー

2022/04/22 05:53

何を何で作っているかを質問の一行目に書いて、適切なタグをつけてください。(例文: ASP.NET Web Forms アプリを Visual Studio 2022 で .NET Framework 4.8 で作っています。 タグ: ASP.NET
Beer_Rabbit

2022/04/22 06:05

dodox86さん、SurferOnWwwさん ありがとうございます。追記しました。
退会済みユーザー

退会済みユーザー

2022/04/22 07:04 編集

> 現在、ボタンのみ追加できておりますが、カレンダー表示と、クリックによる切り替えができておりません。 要するにほとんど何もできてないということのようですね。 質問の画像は Ajax Control Toolkit の Calendar Extender のもののようですが、それは以下のデモにあるように TextBox を組み合わせて、TextBox へのユーザー入力を助ける目的に使うものです。 Calendar Demonstration https://ajaxcontroltoolkit.devexpress.com/Calendar/Calendar.aspx それでいいんですか? 画像には TextBox は見当たりませんけど・・・ そもそも元のアプリは誰が作ったんですか。これを作れる人が、このスレッドような質問をするはずはないから、質問者さんではないと想像してますけど、であれば作った人に聞いてもらった方が良さそうです。
Beer_Rabbit

2022/04/22 07:38

ご回答ありがとうございます。 画像のカレンダーがTextBox を組み合わせによるものということがわかり勉強になりました。 同アプリ内の別機能に、このカレンダーを表示されているものを参照していました。 TextBox を組み合わせで使用しているものです。 これが、ボタンでも使用できるのだろうかと思って調べていました。 質問の内容を変えてみます。
退会済みユーザー

退会済みユーザー

2022/04/22 07:48

標準で用意されているサーバーコントロールの Calendar と Ajax Control Toolkit Modalpopup Extender を組み合わせて使ってはいかが? 
退会済みユーザー

退会済みユーザー

2022/04/22 07:51

作った人に聞いてもらった方が良さそうですと言いましたが、そちらはどうなんですか?
Beer_Rabbit

2022/04/22 07:58

>標準で用意されているサーバーコントロールの Calendar と Ajax Control Toolkit Modalpopup Extender を組み合わせ こちらで、トライしてみます!ありがとうございます。 >作った人に聞いてもらった方が良さそうです 作った方から、こんなイメージのカレンダーから週が切り替わってほしい。 という依頼でした。 その方も実装経験がないとのことでした。 ちなみに現行システムでは、TextBox を組み合わせによるカレンダー表示はあります。 ボタンからカレンダーへの遷移はございません。
退会済みユーザー

退会済みユーザー

2022/04/22 08:06 編集

> 作った方から、こんなイメージのカレンダーから週が切り替わってほしい。という依頼でした。その方も実装経験がないとのことでした。 その方と相談して対処してください。質問の画像のアプリを作る実力のある人なら、相談すれば、今の何もできてない&見当違いの方向に進んでいる状況からは進捗が期待できるのでは?
Beer_Rabbit

2022/04/22 08:19

見当違いとは、どういうことでしょうか。
退会済みユーザー

退会済みユーザー

2022/04/22 09:47

それも併せて作った人と相談してください。 この話はあなたが研修とか教育とかの課題として講師とか上司から与えられたものと想像してます。であれば講師・上司に聞きましょう。評価されないとお悩みのようですが、ここで他人に聞いて解決しても評価は上がらないかも。 そうではなくて、もし業務として製品開発の一環として行っているということなら、これはもう絶対に社内で解決すべき話です。社内で解決できないというのがまず論外ですし、こんなところで赤の他人に聞くのは情報漏洩につながる話でそれ以上に論外です。
Beer_Rabbit

2022/04/22 10:27

書かれている文書があまりに命令的で、指摘の方向性にずれてしまっています。 まず、回答者として発言されるのであれば、技術スキルよりヒューマンスキルを身につけててください。 想像で勝手に判断して余計な回答するのは論外ですね。 ご自身が気持ちよく回答できる質問者に対してだけ回答してください。
退会済みユーザー

退会済みユーザー

2022/04/22 11:01

いやいや、あなたが質問者としてのスキルを身に着けるのが先だと思いますよ。何もできてない、何も分かってない状況で質問を書いて、身近にいる作った人に聞けと言われて逆ギレしても、評価が下がりこそすれ上がることはないのでは。あなた自身が気持ちよくない存在ということを認識された方が良さそうです。 なお、コメントを書くなとか回答するなと言う権利は質問者にはありません。回答者・閲覧者の自由です。
退会済みユーザー

退会済みユーザー

2022/04/22 11:25

質問にあった画像を消したね。ますます質問が分かり難くなるということが分からないのかな? 業務上の情報をネットにアップするなと上司に言われた? 
Beer_Rabbit

2022/04/22 11:42

私の編集を都度チェックされているようで、 コメント待ちでしたか? 私の質問板なんだから自由ですよ。 ご自身の発言がブーメランになっています。 もちろんここで自由にコメントされるのは結構ですよ。 お好きなだけどうぞ。 >コメントを書くなとか回答するな このようは内容は記載してないです。想像。被害妄想。
退会済みユーザー

退会済みユーザー

2022/04/22 12:02

チェックしてなくてもあなたがここにコメントを書いたり質問文を編集したりするとメールが来るのですよ。せっかくだから、あなたとここを見ているの閲覧者の方に対して書いている次第。 お説教だと思っているのが間違い。それがあなたがお悩みの「評価されない」原因かも。多少のことでキレたりしないで、ここだけは教えてくれと頼むなり、何が何でも解決しようという強い意志はお持ちかな?
Beer_Rabbit

2022/04/22 12:28

>コメントを書いたり質問文を編集したりするととメールが来るのですよ 編集してわかりにくくなったって指摘されましたが、そもそも編集前からわかってないのでは? 今さら、指摘されても・・・・。 >何が何でも解決しようという強い意志はお持ちかな? ならば、どんなやり方でもいいということです。 好きにやらせてください。 あなたがいうように、自由に投稿していいというのであれば。
Beer_Rabbit

2022/04/22 12:29

SurferOnWwwさん 私は、今日はもう寝ます! この後投稿された件については、明日に返信させていただきます。 おつかれさまでした。
退会済みユーザー

退会済みユーザー

2022/04/22 12:41

> 編集してわかりにくくなったって指摘されましたが、そもそも編集前からわかってないのでは? いやいや、画像があるのとないのとでは大違い。画像があったからあなたのやりたいことが容易に理解できた。理解できたから上の私のコメントで「標準で用意されているサーバーコントロールの Calendar と Ajax Control Toolkit Modalpopup Extender を組み合わせて使ってはいかが?」と提案したのですよ。あなたにはそれが理解できなかったかもしれんけど。 なんなら、ここでは画像は貼れないので回答欄に貼っておいてあげましょうか? > 好きにやらせてください。 どうぞ。こちらも好きに指摘させてもらいますので。
退会済みユーザー

退会済みユーザー

2022/05/02 05:57

何が何でも解決しようという強い意志とかはやっぱりなくて諦めたのかな?
guest

回答2

0

自己解決

今回の対応は、方針が見直されTextBox の組み合わせでの対応となりました。

尚、このスレッドについては、誹謗中傷の書き込みがあったため
しかるべき機関へ通報いたしました。

投稿2022/06/14 06:48

Beer_Rabbit

総合スコア70

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2022/06/14 07:18

何もできてない、何も分かってない状況で質問を書いて、身近にいる作った人に聞けと言われて逆ギレして、挙句の果てに諦めて方針変更ですか。何ともはや・・・
guest

0

質問者さんは去ってしまったようですが、自分が関わったスレッドがこのまま放置されて終わってしまうのも何なので回答を書いておきます。

ボタンクリックでカレンダーを表示し、ユーザーがカレンダーの日付を選択してその日付をサーバーに送信できれば、後はその日付を元にサーバー側で良しなに対処できるということで、2 案書いておきます。

(1) Ajax Control Toolkit の CalendarExtendar

質問にあるカレンダーの画像が Ajax Control Toolkit の CalendarExtendar です。

元々の使用目的は Date Picker としてテキストボックスと併用し、ユーザーのテキストボックスへの日付入力に便宜を図るものです。ユーザーがカレンダー上の日付を選択すると、それがテキストボックスに設定されます。

カレンダーをボタンクリックして表示するのは、以下のデモページの上から 3 番目の「Calendar with an associated button」のようにして可能です。

Calendar Demonstration
https://ajaxcontroltoolkit.devexpress.com/Calendar/Calendar.aspx

テキストボックスが不要なら CSS で非表示にできます。ただし、テキストボックスを非表示にするとカレンダーの表示位置を JavaScript を書いて調整する必要があります。その方法は以下の記事の Solution 1 が参考になると思います。

Ajax CalendarExtender pop up position
https://www.codeproject.com/Questions/322320/Ajax-CalendarExtender-pop-up-position

結果は以下の画像のようになります。

イメージ説明

ユーザーがカレンダー上で選択した日付は自動的にはサーバーには送信されません。日付をサーバーに送信するには、何らかの手段でポストバックするか(ポストバックすればテキストボックスの値が送信される)、自力でスクリプトを書いて送信することになります。

(2) Calendar と ModalPopupExtender

ASP.NET の Calendar サーバーコントロールと Ajax Control Toolkit の ModalPopupExtender を組み合わせて、ボタンクリックで Calendar をポップアップして表示する案です。

上記 (1) の CalendarExtendar とは異なりテキストボックスは不用です。

また、ユーザーがカレンダー上の日付を選択すると自動的にポストバックがかかり、サーバーには選択した日付が送信されます。サーバー側では Calendar の SelectionChanged イベントのハンドラでそれを取得できます。

ただし、ユーザーがカレンダーに表示された別の月を選択するとポストバックが発生して画面全体が再描画されてしまうというデメリットがあります。それを避けるのは UpdatePanel を使って可能です。

投稿2022/05/08 07:27

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問