0

したがって、DB リストからデータ項目で呼び出すテキスト フィールドがあります。このフィールドを書式設定して、パスポート番号の下 3 桁のみを表示し、最初の 6 桁を # 記号でマスクしようとしています。これをインラインで行うにはどうすればよいですか、またはコードビハインドに移動する必要がありますか?

<asp:TextBox 
    ID="txtPassportNumber" 
    runat="server" 
    MaxLength="9" 
    text="<%# ((TSAPassenger) Container.DataItem).Passport.DocumentNumber %>" 
    Enabled="<%# IsOutsideTenDayCutoff %>"></asp:TextBox>
4

2 に答える 2

0

string.Concatを使用できます。ここで、strはDataItem文字列です。

    (str.Length==9) ? string.Concat(string.Empty.PadLeft(6, '#'), str.Substring(str.Length - 3)) : string.Empty;

後者の文字列を変更できます。空の場合は、エラーやパスポート番号が正しくない場合に必要なものを表示します。

于 2013-01-29T18:18:15.317 に答える
0

あなたはまだこのようなことを試しましたか:

text="<%# '######' & string.right(((TSAPassenger) Container.DataItem).Passport.DocumentNumber,3) %>" 

ただし、アプリで番号が必要でない限り、代わりにデータベース コマンドからそのように呼び出してください。

于 2013-01-29T18:15:56.080 に答える