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

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

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

全過去ログを検索

<< 0 >>
■9364  キャストの方法
□投稿者/ BCT -(2007/10/25(Thu) 11:18:54)

    分類:[.NET 全般] 

    下の質問に絡んだ、別の質問ですが・・・
    Button button1 = e.Item.FindControl("Button1");
    のようなキャストがしたいのですが、方法をご教授ください。

    ぜひぜひ、よろしくお願いいたします。



    void R1_ItemCreated(Object Sender, RepeaterItemEventArgs e) {
    Button button1 = e.Item.FindControl("Button1"); //この部分
    button1.CommandArgument = e.Item.ItemIndex.ToString();
    break;
    }

    <asp:Repeater id="repeater1" OnItemCreated="R1_ItemCreated" runat="server">
    <HeaderTemplate>
    </HeaderTemplate>
    <ItemTemplate>
    <asp:Button ID="Button1" Text="asp:Button 1"
    CommandName="asp:Button"
    CommandArgument="100"
    OnCommand="command_Button" runat="server" />
    </ItemTemplate>
    <FooterTemplate>
    </FooterTemplate>
    </asp:Repeater>
親記事 /過去ログ22より / 関連記事表示
削除チェック/

■9363  Re[3]: この掲示板に関する意見です
□投稿者/ no where guy -(2007/10/25(Thu) 11:11:48)
    過去ログ検索に関してなら、ログ全部テキストで提供すれば良いんじゃないでしょうか?
    (それ以前に自前でログ落とせばいい話ですが)
    この掲示板から検索するから面倒なわけですし。
記事No.9352 のレス /過去ログ22より / 関連記事表示
削除チェック/

■60358  Re[3]: validateの使い方
□投稿者/ つんくん -(2011/06/29(Wed) 15:10:19)
    > validateでは正しくてもまちがっていても必ずメッセージボックスを出す必要があるものがあります。
    正しい場合にメッセージボックスを出すのはvalidateの正しい使い方とは言えません。
    (正しい場合にメッセージボックスを出すのはどのような時でしょうか、想像できません。
    フォーカスが外れるたびにメッセージが出るなんて、うっとしいと思うのですが?)

    > validateを使わないですむよう、取り扱いは必ずリターンキーを押すようにとしておいたのですが、
    マウスが操作できる以上、マウスで操作したくなるのは当然だと思います。

    今回のような応急処置では、今後の改修が発生した時に不具合の発生するリスクが高くなるように思いますので、
    設計を見直すことも必要かと思います。
記事No.60352 のレス /過去ログ101より / 関連記事表示
削除チェック/

■64976  Re[12]: 【VB2005、VB.NET】構造体のコピーについて
□投稿者/ shu -(2013/01/28(Mon) 08:04:42)
    2013/01/28(Mon) 15:09:26 編集(投稿者)

    No64968 (コンバート後に悩む人 さん) に返信
    > 確かにそのとおりだと思います。
    > あまりソースを改変しないことを目的にやるとしたらというところで検討していました。
    > StringBuilderがいいのかもしれないので、今後念頭に入れたいと思います。
    > 今はもう少し、この手法で調査・試行錯誤してみたいと思っています。
    あまりソースを改変しないことを目的とする場合、多少大き目の追加を行うとよい場合があります。

    例えば以下のようなクラスClass1を作成してそこから派生したClassA,ClassBは簡単な実装でもとの
    構造体と似たような動作をさせることができるかと思います。Class1の実装を直せば希望の動きが実装
    出来るのではないでしょうか?参考にしてみて下さい。要件によっては前述したようにByte配列を用いると
    良いと思います。


    Public Class Class1
    Private _InnerValue As String
    Private _FieldStarts() As Integer
    Private _FieldLengths() As Integer

    Public Sub New(ParamArray FieldLengthS() As Integer)
    Dim TotalSize As Integer = 0
    Dim FieldLength As Integer
    Dim Pos As Integer = 0
    Dim Idx As Integer = 0

    _FieldStarts = New Integer(FieldLengthS.Length) {}
    _FieldStarts(Idx) = Pos
    For Each FieldLength In FieldLengthS
    TotalSize += FieldLength
    Idx += 1
    Pos += FieldLength
    _FieldStarts(Idx) = Pos
    Next
    _FieldLengths = FieldLengthS
    _InnerValue = New String(" "c, TotalSize)
    End Sub

    Protected Property InnerValue As String
    Get
    Return _InnerValue
    End Get
    Set(value As String)
    Dim NewValueLength = value.Length
    Dim MyValueLength = _InnerValue.Length
    Select Case NewValueLength
    Case Is < MyValueLength
    _InnerValue = value & New String(" "c, MyValueLength - NewValueLength)
    Case MyValueLength
    _InnerValue = value
    Case Else
    _InnerValue = value.Substring(0, MyValueLength)
    End Select
    End Set
    End Property

    Public Property Value(Index As Integer) As String
    Get
    Dim FieldStart As Integer = _FieldStarts(Index)
    Dim FieldLength As Integer = _FieldLengths(Index)

    Return _InnerValue.Substring(FieldStart, FieldLength)
    End Get
    Set(value As String)
    Dim FieldStart As Integer = _FieldStarts(Index)
    Dim FieldLength As Integer = _FieldLengths(Index)

    Dim NewValue As New StringBuilder
    '設定する部分の前
    If FieldStart > 1 Then
    NewValue.Append(_InnerValue.Substring(0, FieldStart))
    End If
    '設定する文字列
    Select Case value.Length
    Case Is < FieldLength
    NewValue.Append(value.PadRight(FieldLength, " "c))
    Case FieldLength
    NewValue.Append(value)
    Case Else
    NewValue.Append(value.Substring(0, FieldLength))
    End Select
    '設定する部分の後ろ
    If _InnerValue.Length > FieldStart + FieldLength + 1 Then
    NewValue.Append(_InnerValue.Substring(FieldStart + FieldLength))
    End If
    _InnerValue = NewValue.ToString
    End Set
    End Property

    Public Sub Copy(Dest As Class1)
    Dest.InnerValue = Me.InnerValue
    End Sub
    End Class

    Public Class ClassA
    Inherits Class1

    Public Sub New()
    MyBase.New(2, 3, 5, 7)
    End Sub

    Public Property aaaa As String
    Get
    Return MyBase.Value(0)
    End Get
    Set(value As String)
    MyBase.Value(0) = value
    End Set
    End Property

    Public Property bbbb As String
    Get
    Return MyBase.Value(1)
    End Get
    Set(value As String)
    MyBase.Value(1) = value
    End Set
    End Property

    Public Property cccc As String
    Get
    Return MyBase.Value(2)
    End Get
    Set(value As String)
    MyBase.Value(2) = value
    End Set
    End Property

    Public Property ddddd As String
    Get
    Return MyBase.Value(3)
    End Get
    Set(value As String)
    MyBase.Value(3) = value
    End Set
    End Property

    End Class

    Public Class ClassB
    Inherits Class1

    Public Sub New()
    MyBase.New(100)
    End Sub

    Public Property strB As String
    Get
    Return MyBase.Value(0)
    End Get
    Set(value As String)
    MyBase.Value(0) = value
    End Set
    End Property

    End Class


    # ValueのSet部分を修正
記事No.64946 のレス /過去ログ109より / 関連記事表示
削除チェック/

■74404  Re[1]: テキストボックスの文字を全て消すボタン
□投稿者/ Azulean -(2014/12/23(Tue) 18:44:04)
    No74397 (よしむら さん) に返信
    > Googleの検索用のテキストボックスの文字を全て消すボタンが作りたいです。

    これって、Google というよりはブラウザの機能ですよね。
    この掲示板の名前欄とかにも出ますよね?

    > 使い勝手は同じなので、テキストボックスに文字が入っている時だけ、テキストボックス右側に全消ボタンが表示されるように作ったのですが、利便性は同じでもやっぱりオシャレじゃない!
    > 検索しても出てこなかったのでこちらに書き込みました。

    標準のテキストボックスには搭載されていない機能ですし、作り込みはそれなりに苦労すると思われます。
    また、中途半端に作ると文字とかぶるなど、おしゃれとは言いがたい状態になりますし、自前のカスタマイズを頑張ると、Windows 10 などの将来の Windows では逆にダサい見た目になる、見た目が崩れるなどのトラブルが生じるリスクがあります。
    それらの苦労を乗り越えてでも、自作したいとお考えなのでしょうか?

    やるとしたらテキストボックスとは別のコントロールを重ねるようなイメージかもしれません。
    (参考:IE のアドレスバーはいくつかのウィンドウを組み合わせて実現しています)
記事No.74397 のレス /過去ログ125より / 関連記事表示
削除チェック/

■93278  Re[1]: pythonとの連携での実行です。
□投稿者/ shu -(2019/12/02(Mon) 07:35:48)
    No93271 (ささき さん) に返信
    > コマンドプロンプト上から「C:\ProgramData\Anaconda3\python.exe C:\Users\***\Desktop\test.py」を実行しますと正常に働きもするのですが、
    > VB上から下記のようにし実行をしようとしますと何故か「System.ComponentModel.Win32Exception: '指定されたファイルが見つかりません。」が出てもしまいます。
    >
    > System.Diagnostics.Process.Start("C:\ProgramData\Anaconda3\python.exe C:\Users\***\Desktop\test.py")
    >

    System.Diagnostics.Process.Start("C:\ProgramData\Anaconda3\python.exe", "C:\Users\***\Desktop\test.py")
記事No.93271 のレス /過去ログ161より / 関連記事表示
削除チェック/

■93279  Re[2]: pythonとの連携での実行です。
□投稿者/ ささき -(2019/12/02(Mon) 08:18:22)
    No93278 (shu さん) に返信
    > ■No93271 (ささき さん) に返信
    >>コマンドプロンプト上から「C:\ProgramData\Anaconda3\python.exe C:\Users\***\Desktop\test.py」を実行しますと正常に働きもするのですが、
    >>VB上から下記のようにし実行をしようとしますと何故か「System.ComponentModel.Win32Exception: '指定されたファイルが見つかりません。」が出てもしまいます。
    >>
    >>System.Diagnostics.Process.Start("C:\ProgramData\Anaconda3\python.exe C:\Users\***\Desktop\test.py")
    >>
    >
    > System.Diagnostics.Process.Start("C:\ProgramData\Anaconda3\python.exe", "C:\Users\***\Desktop\test.py")

    こう言うことなんですね。

    ありがとうございました。
記事No.93271 のレス / END /過去ログ161より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -