tmytのらくがき

個人の日記レベルです

Flyoutを使うとDataContextが切れる?

Windows Store AppsのXAMLで、ボタンを押すとFlyoutが出せるってのがあります。たとえばこういうの。

<Button>
    <Button.Flyout>
        <Flyout>
            <TextBlock Text="こんにちは!" />
        </Flyout>
    </Button.Flyout>
</Button>

ここで、FlyoutのなかでBindingしようとすると、どうもうまくいきません。DataContextが切れてるみたい。

しかたないので、こんなんで回避してます。

<Button>
    <Button.Flyout>
        <Flyout>
            <Grid x:Name="FlyoutContext">
                <TextBlock Text="こんにちは!" />
            </Grid>
        </Flyout>
    </Button.Flyout>
</Button>
public HogePage()
{
    FlyoutContext.DataContext = this;
}

これどないなの。