5

次のようなメタデータを使用して構築された複数のフィルターコントロールを持つASP.NET動的データサイトがあります。

[ScaffoldTable(true), MetadataType(typeof(Fees.Metadata))]
public partial class Fees
{
    public class Metadata
    {
        [FilterUIHint("DateRange")]
        public object InvoiceDate;
    }
{

これらのフィルターを特定の方法で注文するにはどうすればよいですか。非常にランダムに見えます。メタデータ属性を使用できますか、それともページテンプレートを変更する必要がありますか?

4

2 に答える 2

2

わかりましたので、次のように、カスタム コード ビハインド ページのコントロール リストを手動で並べ替えました。

Control date_filter = FilterRepeater.Controls[1];
FilterRepeater.Controls.RemoveAt(1);
FilterRepeater.Controls.Add(date_filter); 

ページ上の 3 つのコントロールのうち、これにより 2 番目が削除され、最後に追加されます。

もう一度使用する必要がある場合は、メソッドを作成してコントロール名を検索します。

これは大まかな解決策ですが、この 1 回限りのシナリオには適しています。誰かがより良い方法を見つけたら、私に知らせてください。


OK より良い方法:

  1. これをインストールします: http://nuget.org/packages/NotAClue.DynamicData.Extensions
  2. 「NotAClue.ComponentModel.DataAnnotations を使用して」参照を追加します。別のエンティティ ページを使用している場合
  3. [Filter(Order=1)] メタデータ タグを属性に追加します
于 2012-11-19T04:54:15.817 に答える