C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

FindControlが取得できない

[トピック内 9 記事 (1 - 9 表示)]  << 0 >>

■95216 / inTopicNo.1)  FindControlが取得できない
  
□投稿者/ asp初心者 (4回)-(2020/07/02(Thu) 11:54:49)

分類:[.NET 全般] 

2020/07/02(Thu) 12:58:46 編集(投稿者)

ASP.NET
WebForm

Dim text1 As TextBox = Page.PreviousPage.FindControl("TextBox1")
でFindControlを取得しようとしたところ、取得できず下記内容の記事を参考に
https://zukucode.com/2017/09/aspnet-master-findcontrol.html

マスターページを使っていたので
Dim text1 As TextBox = Me.Master.FindControl("MainContent").FindControl("TextBox1")
と修正したのですが、実行してみるとNathingでかえってきます。
runat="server"はちゃんと記述してあるのですが・・・原因不明です。

Dim text1 As TextBox = Me.Master.FindControl("MainContent").Page.PreviousPage.FindControl("TextBox1")
このようにしてもダメでした。

解決策がありましたら、宜しくお願い致します。
引用返信 編集キー/
■95219 / inTopicNo.2)  Re[1]: FindControlが取得できない
□投稿者/ WebSurfer (2078回)-(2020/07/02(Thu) 12:55:25)
No95216 (asp初心者 さん) に返信

> でFindControlを取得しようとしたところ、取得できず下記内容の記事を参考に

「下記の記事」とは???????

開発環境(Visual Studio, .NET Framework のバージョンなど)を書いてください。
引用返信 編集キー/
■95220 / inTopicNo.3)  Re[2]: FindControlが取得できない
□投稿者/ asp初心者 (5回)-(2020/07/02(Thu) 12:59:45)
2020/07/02(Thu) 13:01:04 編集(投稿者)

No95219 (WebSurfer さん) に返信
> 「下記の記事」とは???????
すみません、修正しました。

> 開発環境(Visual Studio, .NET Framework のバージョンなど)を書いてください。
Visual Studio 2010
.NET Framework 4 です。

宜しくお願い致します。
引用返信 編集キー/
■95222 / inTopicNo.4)  Re[1]: FindControlが取得できない
□投稿者/ WebSurfer (2079回)-(2020/07/02(Thu) 13:56:17)
No95216 (asp初心者 さん) に返信

クロスページポストバックを使うことはどうしても必要ですか?

どうしても必要ということでなければ、使わない方向で考え直す
ことをお勧めしたいのですが・・・
引用返信 編集キー/
■95226 / inTopicNo.5)  Re[2]: FindControlが取得できない
□投稿者/ asp初心者 (6回)-(2020/07/02(Thu) 14:04:48)
No95222 (WebSurfer さん) に返信
> クロスページポストバックを使うことはどうしても必要ですか?
>
> どうしても必要ということでなければ、使わない方向で考え直す
> ことをお勧めしたいのですが・・・

あまりよくないのでしょうか?
ページ間同士での値のやり取りをしたかったので、私が思いつく限りだとこの方法しかなかったのですが
もし他のやり方の方がいいのであれば、教えていただけますか?
引用返信 編集キー/
■95227 / inTopicNo.6)  Re[3]: FindControlが取得できない
□投稿者/ WebSurfer (2080回)-(2020/07/02(Thu) 14:12:01)
No95226 (asp初心者 さん) に返信

> あまりよくないのでしょうか?
> ページ間同士での値のやり取りをしたかったので、私が思いつく限りだとこの方法しかなかったのですが
> もし他のやり方の方がいいのであれば、教えていただけますか?

どうしても必要ということでなければ、全く良いところはないと思います。

クエリ文字列で渡すとか、それがダメなら Session を使うことを検討してください。
引用返信 編集キー/
■95228 / inTopicNo.7)  Re[4]: FindControlが取得できない
□投稿者/ asp初心者 (7回)-(2020/07/02(Thu) 14:46:33)
No95227 (WebSurfer さん) に返信
> どうしても必要ということでなければ、全く良いところはないと思います。
>
> クエリ文字列で渡すとか、それがダメなら Session を使うことを検討してください。

ありがとうございます。
Sessionを使ってやってみたいと思います。
また不明な点がでてきた場合、再度別スレッドで質問したいと思います。
まずは自分でやってみたいと思います。

ありがとうございました。
解決済み
引用返信 編集キー/
■95229 / inTopicNo.8)  Re[3]: FindControlが取得できない
□投稿者/ WebSurfer (2081回)-(2020/07/02(Thu) 14:58:03)
No95226 (asp初心者 さん) に返信

> あまりよくないのでしょうか?

クロスページを使うとどういう問題に遭遇するかという例を紹介しておきます。

Page.PreviousPage を取得しようとすると PreviousPage がロードされて実行されるので、
その時実行されては困ることが起こる可能性がある。以下の記事はその例で、起こっては
いけないリダイレクトが起こった話です。

PostBackUrl と Page.PreviousPage
http://surferonwww.info/BlogEngine/post/2010/08/27/PostBackUrl-and-PagePreviousPage.aspx

ブラウザの戻るボタンで元のページに戻った場合、ブラウザによってはページングなどの
機能が働かなくなる(ページングしたいのにクロスページポストバックされてしまう)と
いう話もあります。

Firefox と PostBackUrl
http://surferonwww.info/BlogEngine/post/2019/03/09/Firefox-e381a8-PostBackUrl.aspx


クロスページポストバックと Server.Transfer は、それが絶対必要というケース以外には
使わないことをお勧めします。

引用返信 編集キー/
■95230 / inTopicNo.9)  Re[4]: FindControlが取得できない
□投稿者/ WebSurfer (2082回)-(2020/07/02(Thu) 14:59:27)
解決済みマークをつけ忘れました。
解決済み
引用返信 編集キー/

このトピックをツリーで一括表示


トピック内ページ移動 / << 0 >>

このトピックに書きこむ