かずきのBlog

C#やJavaやRubyとメモ書き

目次

Blog 利用状況

ニュース

わんくまBlogが不安定になったため、前に書いてたはてなダイアリーにメインを移動します。
かずきのBlog@Hatena
技術的なネタは、こちらにも、はてなへのリンクという形で掲載しますが、雑多ネタははてなダイアリーだけに掲載することが多いと思います。
コメント
プログラマ的自己紹介
お気に入りのツール/IDE
プロフィール
経歴
広告
アクセサリ

書庫

日記カテゴリ

[WPF][C#]TemplateBindingとBindingのRelativeSource TemplatedParentの違い

WPFのControlTemplateとかで使えるBindingの特殊な書き方にTemplateBindingというものがある。こいつは、プロパティ名を受け取るだけのシンプルなもの。
TemplateBindingを使わなくても、BindingのRelativeSourceに{RelativeSource TemplatedParent}を指定することで、TemplateBindingと同じような動きをさせることが出来る。
ただし、使ってみると微妙に動きが違うことに気づいた。今まではTemplateBindingを使うと楽チンくらいにしか思ってなかったけど、違いを明らかにするために、いくつか実験をしてみようと思う。

とりあえず、実験するためにカスタムコントロールを1つこさえる。Controlを継承して、Textプロパティを定義しただけのシンプルなコントロール。

using System.Windows;
using System.Windows.Controls;

namespace WpfComboBoxStudy
{
    // TextBoxもどきコントロール
    public class CustomControl : Control
    {
        static CustomControl()
        {
            DefaultStyleKeyProperty.OverrideMetadata(typeof(CustomControl), new FrameworkPropertyMetadata(typeof(CustomControl)));
        }

        #region Textプロパティ
        public string Text
        {
            get { return (string)GetValue(TextProperty); }
            set { SetValue(TextProperty, value); }
        }

        // Using a DependencyProperty as the backing store for Text.  This enables animation, styling, binding, etc...
        public static readonly DependencyProperty TextProperty =
            DependencyProperty.Register(
                "Text", 
                typeof(string), 
                typeof(CustomControl), 
                new UIPropertyMetadata(null));
        #endregion

    }
}

Generic.xaml側はこんな感じ。TextBoxを置いて、TemplateBindingを使ってTextBoxのTextプロパティとCustomControlのTextプロパティをバインドしている。

<ResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="clr-namespace:WpfComboBoxStudy">
    <Style TargetType="{x:Type local:CustomControl}">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type local:CustomControl}">
                    <!-- TemplateBinding!!!! -->
                    <TextBox Text="{TemplateBinding Text}" />
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</ResourceDictionary>

このコントロールを、WindowにおいてTextプロパティにHello worldを設定する。

<Window x:Class="WpfComboBoxStudy.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="clr-namespace:WpfComboBoxStudy"
    Title="Window1" Height="300" Width="300">
    <StackPanel>
        <local:CustomControl x:Name="customControl" Text="Hello world" />
    </StackPanel>
</Window>

これを実行すると、TextBoxにHello worldと表示される素敵な画面が出来上がる。
image

さて、ここで1つ問題が出てくる。問題を明らかにするためにボタンを1つ置いてClickイベントでCustomControlのTextプロパティをMessageBoxで表示するようにしてみた。

<Window x:Class="WpfComboBoxStudy.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="clr-namespace:WpfComboBoxStudy"
    Title="Window1" Height="300" Width="300">
    <StackPanel>
        <local:CustomControl x:Name="customControl" Text="Hello world" />
        <!-- ↓こいつね!!!↓ -->
        <Button Content="Alert" Click="Alert" />
    </StackPanel>
</Window>
using System.Windows;

namespace WpfComboBoxStudy
{
    public partial class Window1 : Window
    {
        public Window1()
        {
            InitializeComponent();
        }

        private void Alert(object sender, RoutedEventArgs e)
        {
            MessageBox.Show(customControl.Text);
        }

    }
}

これを実行してみると、ちょっとした問題にぶちあたる。実行直後にボタンを押すと期待通りの値になる。
image

ただし、TextBoxの中身を書き換えてボタンを押すと…
image

ばっちり値が反映されてない。つまり、ターゲットからソースへの書き戻しが行われない。
ソースからターゲットへの書き戻しは普通に動く。試してみよう。

もう1つボタンを置く。

<Window x:Class="WpfComboBoxStudy.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="clr-namespace:WpfComboBoxStudy"
    Title="Window1" Height="300" Width="300">
    <StackPanel>
        <local:CustomControl x:Name="customControl" Text="Hello world" />
        <Button Content="Alert" Click="Alert" />
        <!-- ↓足したのはこいつね!!!↓ -->
        <Button Content="Update Source" Click="UpdateSource" />
    </StackPanel>
</Window>

そして、イベントハンドラでcustomControlのTextプロパティの値を更新する処理を書く。

private void UpdateSource(object sender, RoutedEventArgs e)
{
    customControl.Text = "筋肉が落ちていく";
}

これを実行して、Update Sourceボタンを押すと…
image ぽちっとな
image
ソースからターゲットへ、値の更新がばっちり反映されている。

ということで、TemplateBindingは一方通行なのでした。Bindingを使うと…

<ResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="clr-namespace:WpfComboBoxStudy">
    <Style TargetType="{x:Type local:CustomControl}">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type local:CustomControl}">
                    <!-- Binding!!!! -->
                    <TextBox Text="{Binding Path=Text,
                                            RelativeSource={RelativeSource TemplatedParent}}" />
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</ResourceDictionary>

テキストボックスを編集してAlertを押してみると、ちゃんとCustomControlのTextプロパティが書き換わってる。
image

もちろんUpdateSourceボタンを押したときの動作もOK。
image

ということで簡単にまとめ。

TemplateBindingはソースからターゲットへの一方通行。
細かな制御をしたければ{Binding RelativeSource={RelativeSource TemplatedParent}, ....}を使おう。

投稿日時 : 2008年9月4日 20:28

Feedback

# re: [WPF][C#]TemplateBindingとBindingのRelativeSource TemplatedParentの違い 2009/12/01 16:24 NetSeed

NetSeedと申します。

WPFの記事を興味深く拝読させていただきました。
さて、上記表題の記事に関して若干疑問に思うところがあり、質問させて頂く次第でございます。

記事内でControlから、派生させたTextBoxもどきをご利用になっておりましたが、もし、テンプレートにて定義されているTextBoxの各種イベント
(GotFocus,LostFocusなど)をコンテナ側のControl
(記事内ではCustomControl)でフックできるようにするにはどのようにすればいいのかご存じでしょうか?
当方で、試したところ、On~系もOnPreviw~系もどちらも受信が出来なくなっておりました。

愚考するに、Preview系は受信が出来てるので、TextBox側でHandledがtrueとなり、終了している気がします。

# Cheap Canada Goose 2012/10/19 14:25 http://www.supercoatsale.com

I really like your writing style, great info, appreciate it for posting :D. "In university they don't tell you that the greater part of the law is learning to tolerate fools." by Doris Lessing.

# Christian Louboutin Booties 2012/12/08 8:16 http://mychristianlouboutinonline.webs.com/

hi!,I really like your writing so so much! share we keep up a correspondence extra approximately your post on AOL? I require an expert in this area to resolve my problem. Maybe that's you! Having a look forward to see you.

# エルメス 2012/12/15 15:35 http://www.hermespairs.info/category/エルメス

Great text, it's advantageous information.

# burberry outlet 2012/12/15 23:01 http://www.burberryuksale.info/category/burberry-o

this is definitely something i had never actually read.

# longchamp achete 2012/12/16 17:57 http://www.saclongchampachete.com/category/longcha

keep up the good succeed!

# longchamp pliagelongchamp le pliage 2012/12/17 2:54 http://www.longchampfr.info/category/sac-longchamp

This is really a really wonderful site place, im delighted I found it.

# sac a main michael kors pas cher 2012/12/18 2:11 http://sacmichaelkorssoldes.monwebeden.fr/#/bienve

The stars with this pool are the comments additionally, the pictures happen to be secondary.

# michael kors femme 2012/12/18 19:53 http://sac2012femmes.wordpress.com

That's what precisely earbuds usually are for.

# sacslongchamppliage.monwebeden.fr 2012/12/21 2:54 http://sacslongchamppliage.monwebeden.fr

You definitely know any stuff...

# michael kors pas cher 2012/12/22 17:26 http://sacmichaelkorssoldes.monwebeden.fr

I apply earbuds away from home because of these portability, even though I prefer over this ear.

# Sarenza lando 2013/01/11 11:08 http://www.robenuk.eu/

If you need to every information technology of our cost, be coounting your buddies.
Sarenza lando http://www.robenuk.eu/

# pari street 2013/03/15 9:00 http://www.a88.fr/

True love will be delicate at arrival, nonetheless it grows tougher as we grow older the expense of efficiently provided. pari street http://www.a88.fr/

# destock mode 2013/03/16 8:51 http://www.b77.fr/

An accurate buddie is but one who overlooks any suprises and also tolerates any positive results. destock mode http://www.b77.fr/

# casquette obey 2013/03/16 9:58 http://www.a44.fr/

If you decide you will keep blueprint via an enemy, advise the following because of this a buddy. casquette obey http://www.a44.fr/

# destockplus 2013/03/18 8:17 http://www.ruenike.com/sac-c-19.html/

Don‘tonne waste content it slow on the people/girl,the people that isn‘tonne happy to waste content their particular period of time giving you. destockplus http://www.ruenike.com/sac-c-19.html/

# destock sport et mode 2013/03/18 8:17 http://www.ruenike.com/autres-c-25.html/

Anyone which you just acquire along with creates are going to be bought from everyone. destock sport et mode http://www.ruenike.com/autres-c-25.html/

# laredoutesoldes.com 2013/04/07 5:59 http://www.laredoutesoldes.com/

The truth relationship foresees the needs of various other instead of just proclaim you'll find it's acquire. laredoutesoldes.com http://www.laredoutesoldes.com/

# laredoute 2013/04/07 7:14 http://ruezee.com/

A true mate the individuals who overlooks the downfalls along with tolerates the successes. laredoute http://ruezee.com/

# Nike Air Jordan Retro 4 2013/04/07 14:37 http://www.nikejordanretro4ok.com/

Genuine acquaintance foresees the needs of alternative in preference to glorify its unique. Nike Air Jordan Retro 4 http://www.nikejordanretro4ok.com/

# coach outlet purses 2013/04/07 17:09 http://www.coachoutletstore55.com/

Around the globe you'll probably be body, but nonetheless , to one people you'll probably be the globe. coach outlet purses http://www.coachoutletstore55.com/

# rueyee.com 2013/04/07 17:15 http://www.rueyee.com/

If you decide to is likely to you may even magic formula due to an opponent, know this can to never a person. rueyee.com http://www.rueyee.com/

# tati 2013/04/07 19:58 http://ruenee.com/

An absolute companion can offer who exactly overlooks your primary backsliding and additionally can handle your primary achievements. tati http://ruenee.com/

# LQWSkSoKZzhoLNft 2014/08/04 4:49 http://crorkz.com/

lMOXTd Really informative blog article.Much thanks again. Want more.

# ZzkTeZzQggfnwioLz 2014/08/31 2:39 http://www.trekfun.com

excellent submit, very informative. I wonder why the opposite experts of this sector do not notice this. You must proceed your writing. I am confident, you have a huge readers' base already!

# WMxEvrzYmabACBST 2014/09/10 18:03 https://www.youtube.com/watch?v=6l8bpZ0oY_M

F*ckin' awesome things here. I am very happy to look your article. Thanks a lot and i am having a look ahead to contact you. Will you please drop me a mail?

# qtZZXdBYxWNYbsC 2014/09/17 18:43 https://local.amazon.com/deals/B00NF3NXH6

Wonderful site. Plenty of useful info here. I am sending it to several friends ans also sharing in delicious. And certainly, thanks for your sweat!

# 偽ブランド 通販 2017/07/23 18:30 fxxqhtxg@i.softbank.jp

誠実★信用★顧客は至上
当社の商品は絶対の自信が御座います
商品数も大幅に増え、品質も大自信です
品質がよい 価格が低い 実物写真 品質を重視
正規品と同等品質のコピー品を低価でお客様に提供します
ご注文を期待しています!

# 時計特価品 2017/08/06 18:15 jzvsfcrtgz@icloud.com

激安全国送料無料!100%正規品!
【新商品!】☆安心の全品国内発送!
【超人気新品】即日発送,品質100%保証!
激安販売中!
激安通販!☆安心の全品国内発送!
愛する品を選択する高級アイテムコンセント
『激安人気』送料無料.
『最速最新2017年人気新作!!』
2年保証、返品可能、全国送料無料!
顧客サービスと速い配送でお客様に手入れ。
高品質とリーズナブルで販売
オンラインストアオファー激安輸出
超安値登場!品質保証、最安値に挑戦!
オンラインストアは、ご来店ありがとうございます.
超人気【楽天市場】

# パネライ最高品質時計 2017/10/18 7:24 cjngasqtyuc@yahoo.co.jp

迅速・丁寧に対応頂きお品物も素敵で満足しています。
また機会がありましたらヨロシクお願い致します。
★ルイヴィトン★パドロック★カデナ&カギ×1★ゴールド★
スーツケースのカギを失くしてしまったので、代替品として購入しました。
写真では少し黒ずんでいましたが、実際はとてもきれいな状態でした。
割安で購入できて、本当に助かりました。

# gagaコピー 2017/10/27 7:25 ceuwfjvvgfe@goo.ne.jp

当社の製品は間違いなく、顧客の大半は彼らの友人が行う信頼の価値がある!
最低価格保証高品質の製品、非常に良い。
お客様はああ友人を訪問するために歓迎されています!
主にブランドのバッグ、財布、時計などの製品に従事してお買い物。
低価格、良い品質、本物の写真!大量の製品。
最新のLVの財布、新素材を使用しています。
オメガは、誰にでも入手可能な最高グレードを買うために見
高品質、独占販売
それは、自由に付属しています
100%品質保証!満足を保証します! 100%の繰り返し率
次のWebサイトでは、尋ねるあなたの満足をパックする。
gagaコピー http://www.newkokoku.com

# ガガミラノ 時計コピー 2017/10/31 12:01 orqcqg@hotmail.co.jp

超人気クリスチャンルブタンクリスチャンルブタン通販超N品シューズ超N品

# ルイヴィトンコピー 2017/11/05 4:57 ffvehr@livedoor.com

初めて購入させていただきました。
商品状態も良く、梱包も丁寧で気持ちよく受取りできました。
信頼できるショップだと思いましたありがとうございます。
ルイヴィトンコピー http://www.nawane111.com

# 素晴らしいブランド偽物時計 2017/11/05 6:55 tgcematlg@hotmail.co.jp

ルイヴィトン - N級バッグ、財布 専門サイト問屋
弊社は販売LOUIS VUITTON) バッグ、財布、 小物類などでございます。
弊社は「信用第一」をモットーにお客様にご満足頂けるよう、
送料は無料です(日本全国)! ご注文を期待しています!
下記の連絡先までお問い合わせください。
是非ご覧ください!
激安、安心、安全にお届けします.品数豊富な商
商品数も大幅に増え、品質も大自信です
100%品質保証!満足保障!リピーター率100%!

# スーパールイヴィトンコピー 2017/11/09 5:29 zaxdmtxcqad@excite.co.jp

今回初めて取引きさせていただきました。電話やメールの対応は丁寧で良かったです。商品を購入した際の確認メールや商品発送のお知らせのメールがやや遅いように思いました。スタッフの方の対応が良かったので次の機会があれば利用したいと思います。

# 偽物グッチ激安 2017/11/11 14:05 qeknriys@nifty.com

丁寧で迅速な対応で、安心して取引できました。ショップスタッフからの自筆レターも添えられており、好感が持てます。新品品購入では情報と安心感が決め手になります。機会があったらリピートしたいショップです。
偽物グッチ激安 http://www.nawane111.com

# ブランド激安市場 2017/11/13 3:09 flfbqenbhh@yahoo.co.jp

問い合わせにも大変丁寧に応対していただき、非常に品質のよい商品を、購入させていただきました。
梱包も丁寧で、新品を買ったのと同じ気分です。
信頼できるショップさんだと思います。
シャネルバッグ購入。

# 偽ブランド 2018/03/11 23:15 vnpxkrt@live.jp

通販最大80%OFF、送料無料
正規販売代理店【即日発送】
新品入荷大特価!
【品質至上】送料無料!
安い 品質と価格に優れる信用ある!
直営店 限定SALE極上本革バッグ!
超美品』正規品※激安販売※
豪華アイテムファクトリーアウトレットオンラインストア、
2018本物しいおよび高品質激安通販.
【人気沸騰】AllJapan最安値!
スタイリッシュで高品質の本物
【激安大特集】100%品質保証
人気爆発,超歓迎、2018【最安値】!
2018年新作!
【楽天市場】5☆大好評、制作精巧!!

# ctNPGESiyEgtRcz 2018/12/20 3:53 https://www.suba.me/

6AIgqc I think this is a real great article post.Much thanks again. Keep writing.

# Ahaa, its pleasant discussion on the topic of this paragraph at this place at this blog, I have read all that, so now me also commenting at this place. 2019/04/09 23:17 Ahaa, its pleasant discussion on the topic of this

Ahaa, its pleasant discussion on the topic of this paragraph
at this place at this blog, I have read all that, so now me also commenting at this place.

# Valuable information. Lucky me I discovered your web site by accident, and I'm surprised why this twist of fate did not came about in advance! I bookmarked it. 2019/05/03 14:21 Valuable information. Lucky me I discovered your w

Valuable information. Lucky me I discovered your web site by accident, and I'm surprised why
this twist of fate did not came about in advance! I bookmarked it.

# My programmer is trying to convince me to move to .net from PHP. I have always disliked the idea because of the expenses. But he's tryiong none the less. I've been using Movable-type on several websites for about a year and am anxious about switching to 2019/08/14 19:37 My programmer is trying to convince me to move to

My programmer is trying to convince me to
move to .net from PHP. I have always disliked the idea because of the expenses.
But he's tryiong none the less. I've been using Movable-type on several websites for about a year and am anxious about switching to another platform.
I have heard very good things about blogengine.net. Is there a way
I can import all my wordpress posts into it? Any help would be really appreciated!

# You could certainly see your skills within the article you write. The sector hopes for even more passionate writers such as you who are not afraid to mention how they believe. Always go after your heart. 2019/08/24 16:11 You could certainly see your skills within the art

You could certainly see your skills within the article you write.
The sector hopes for even more passionate writers such as
you who are not afraid to mention how they believe.
Always go after your heart.

# Illikebuisse jzcav 2021/07/04 8:15 pharmaceptica

hydroxyl chloroquine https://www.pharmaceptica.com/

# erectile muscle 2021/07/09 2:08 hydroxychlor 200 mg

hydroxychloroquine sulphate https://plaquenilx.com/# hydroxychlor side effects

# re: [WPF][C#]TemplateBinding?Binding?RelativeSource TemplatedParent??? 2021/07/11 16:50 hcq drug

chloroquinne https://chloroquineorigin.com/# hydroxychloroquine

# re: [WPF][C#]TemplateBinding?Binding?RelativeSource TemplatedParent??? 2021/07/17 12:48 quinoline sulfate

choroquine https://chloroquineorigin.com/# side effect of hydroxychloroquine

# 400 mg prednisone https://prednisonesnw.com/#
prednisone pill 20 mg 2021/11/13 9:39 Prednisone

400 mg prednisone https://prednisonesnw.com/#
prednisone pill 20 mg

# bimatoprost https://bimatoprostrx.com
careprost for sale
2021/12/13 16:10 Hksfnjkh

bimatoprost https://bimatoprostrx.com
careprost for sale

# 偽物時計 2021/12/27 16:46 mwvjwex@ezwen.ne.jp

サポート体制も万全です。スタイルが豊富で。
最新作も随時入荷いたしております。
ご安心購入くださいませ。
★N品質シリアル付きも有り 付属品完備!
以上 宜しくお願い致します。(^0^)
広大な
客を歓迎して買います!
偽物時計 https://www.kopi66.com/product/detail.aspx?id=13222

# stromectol 3mg tablets http://stromectolabc.com/
ivermectin 12 mg 2022/02/07 17:35 Busjdhj

stromectol 3mg tablets http://stromectolabc.com/
ivermectin 12 mg

# ivermectin lice http://stromectolabc.com/
ivermectin 1 2022/02/08 3:32 Busjdhj

ivermectin lice http://stromectolabc.com/
ivermectin 1

# doxycycline vibramycin https://doxycyline1st.com/
doxycycline monohydrate 2022/02/26 9:31 Doxycycline

doxycycline vibramycin https://doxycyline1st.com/
doxycycline monohydrate

# ed medications https://erectionpills.best/
ed dysfunction treatment 2022/06/28 10:55 ErectionPills

ed medications https://erectionpills.best/
ed dysfunction treatment

# カルティエコピー 2022/10/01 3:48 xbcfcb@excite.co.jp

財布、腕時計物、バッグ 販売
こんにちは、お客様。
突然の投稿大変失礼いたします。
弊社は、主にブランド品の輸入を取り扱っております。
誠実信用の販売 期待はあなたと楽しい付き合いを持っています!

主要な特徴:
1.商品に対して厳格な検査をしています.
2.入金の後で、在庫(品)のない商品を発送して、私の店は銭做を返します.
3.もし商品は税関に没収するならば、絶対的な再度は無料で商品を発送します.
4.もし到着する商品に対して満足しませんならば、私の店のとても良いのはして品物の交換に帰って、あるいはお金を返します.

その他

EMS(国際速達郵便)運輸 全国一律送料無料

業者の方の買い付けも歓迎です
カルティエコピー https://www.bagraku.com/Product/PicView/?picid=8753&proid=3287

# Pills information. Manufacturer names. pplosx 2022/12/21 2:02 FawRity

What are the two most common parasitic infections to infest humans likes https://flagylpls.com/ flagyl tabletas 500 mg

# Read information now. All trends of medicament.
https://canadianfast.com/
Medicament prescribing information. earch our drug database. 2023/02/20 0:24 CanadaBest

Read information now. All trends of medicament.
https://canadianfast.com/
Medicament prescribing information. earch our drug database.

# doors2.txt;1 2023/03/14 15:04 ecdUpBtRPJeKkJMiW

doors2.txt;1

# best online canadian pharcharmy https://pillswithoutprescription.pro/# 2023/05/15 5:18 PillsPresc

best online canadian pharcharmy https://pillswithoutprescription.pro/#

# canadian drug company https://pillswithoutprescription.pro/# 2023/05/16 11:33 PillsPro

canadian drug company https://pillswithoutprescription.pro/#

# п»їonline apotheke 2023/09/26 13:52 Williamreomo

http://onlineapotheke.tech/# versandapotheke deutschland
internet apotheke

# online apotheke preisvergleich 2023/09/26 15:53 Williamreomo

https://onlineapotheke.tech/# internet apotheke
online apotheke gГ?nstig

# online apotheke gГјnstig 2023/09/26 23:55 Williamreomo

http://onlineapotheke.tech/# online apotheke versandkostenfrei
п»?online apotheke

# п»їonline apotheke 2023/09/27 1:52 Williamreomo

http://onlineapotheke.tech/# versandapotheke
versandapotheke

# online apotheke deutschland 2023/09/27 3:43 Williamreomo

https://onlineapotheke.tech/# online apotheke gГ?nstig
п»?online apotheke

# п»їonline apotheke 2023/09/27 5:27 Williamreomo

http://onlineapotheke.tech/# internet apotheke
gГ?nstige online apotheke

# gГјnstige online apotheke 2023/09/27 6:40 Williamreomo

https://onlineapotheke.tech/# versandapotheke versandkostenfrei
п»?online apotheke

# farmacie online autorizzate elenco 2023/09/27 16:21 Rickeyrof

acheter sildenafil 100mg sans ordonnance

# farmacie online sicure 2023/09/27 19:31 Rickeyrof

acheter sildenafil 100mg sans ordonnance

# no.rx 2023/10/16 16:09 Dannyhealm

The staff is well-trained and always courteous. https://mexicanpharmonline.shop/# mexico drug stores pharmacies

# no perscription required 2023/10/16 17:57 Dannyhealm

drug information and news for professionals and consumers. https://mexicanpharmonline.com/# reputable mexican pharmacies online

# mexico drug store online 2023/10/17 2:07 Dannyhealm

They make prescription refills a breeze. http://mexicanpharmonline.com/# reputable mexican pharmacies online

# canadian pharmecy 2023/10/17 2:39 Dannyhealm

They are always proactive about refills and reminders. https://mexicanpharmonline.shop/# mexico drug stores pharmacies

# canada drug center promo code 2023/10/17 5:51 Dannyhealm

The pharmacists always take the time to answer my questions. http://mexicanpharmonline.shop/# mexico drug stores pharmacies

# canadian pills 2023/10/18 5:38 Dannyhealm

From greeting to checkout, always a pleasant experience. http://mexicanpharmonline.com/# mexican pharmaceuticals online

# paxlovid for sale https://paxlovid.bid/ paxlovid price 2023/10/26 0:37 Paxlovid

paxlovid for sale https://paxlovid.bid/ paxlovid price

# canada drug online 2023/11/30 8:51 MichaelBum

https://paxlovid.club/# paxlovid price

# trusted overseas pharmacies 2023/12/01 1:07 MichaelBum

https://claritin.icu/# where to buy ventolin generic

# ï»¿paxlovid 2023/12/01 7:04 Mathewhip

paxlovid http://paxlovid.club/# paxlovid generic

# top rated canadian pharmacies 2023/12/03 13:52 MichaelBum

http://clomid.club/# clomid price

# farmacia envíos internacionales 2023/12/07 20:43 RonnieCag

https://tadalafilo.pro/# farmacia barata

# farmacias online seguras 2023/12/07 23:51 RonnieCag

https://tadalafilo.pro/# farmacias online baratas

# ï»¿farmacia online 2023/12/08 11:40 RonnieCag

https://tadalafilo.pro/# farmacia envíos internacionales

# ï»¿farmacia online 2023/12/08 20:38 RonnieCag

https://vardenafilo.icu/# farmacias baratas online envío gratis

# farmacias online seguras en españa 2023/12/09 15:04 RonnieCag

https://farmacia.best/# farmacia 24h

# farmacia online barata 2023/12/09 18:13 RonnieCag

https://vardenafilo.icu/# farmacia online madrid

# farmacias online seguras en españa 2023/12/09 21:37 RonnieCag

http://tadalafilo.pro/# farmacia barata

# farmacias baratas online envío gratis 2023/12/10 21:42 RonnieCag

http://vardenafilo.icu/# farmacia online barata

# farmacias baratas online envío gratis 2023/12/11 1:06 RonnieCag

http://vardenafilo.icu/# farmacia online 24 horas

# farmacia online envío gratis 2023/12/11 4:45 RonnieCag

http://vardenafilo.icu/# farmacias online seguras en españa

# farmacias baratas online envío gratis 2023/12/11 19:52 RonnieCag

https://tadalafilo.pro/# farmacias baratas online envío gratis

# ï»¿farmacia online 2023/12/13 5:22 RonnieCag

http://tadalafilo.pro/# farmacias online baratas

# Pharmacie en ligne France 2023/12/14 1:21 Larryedump

https://pharmacieenligne.guru/# pharmacie ouverte

# Acheter médicaments sans ordonnance sur internet 2023/12/15 12:26 Larryedump

https://pharmacieenligne.guru/# Pharmacie en ligne fiable

# acheter medicament a l etranger sans ordonnance 2023/12/16 1:40 Larryedump

http://pharmacieenligne.guru/# Acheter médicaments sans ordonnance sur internet

# Pharmacie en ligne livraison 24h 2023/12/16 10:00 Larryedump

https://pharmacieenligne.guru/# Pharmacie en ligne fiable

# generic clomid online 2023/12/29 9:41 RaymondGrido

http://paxlovid.win/# buy paxlovid online

# eva elfie izle https://evaelfie.pro/ eva elfie video 2024/03/03 10:55 EvaElfia

eva elfie izle https://evaelfie.pro/ eva elfie video

# abella danger izle https://abelladanger.online/ Abella Danger
2024/03/06 11:18 Adella

abella danger izle https://abelladanger.online/ Abella Danger

# gates of olympus oyna demo - https://gatesofolympus.auction/ gates of olympus oyna 2024/03/27 21:12 Olympic

gates of olympus oyna demo - https://gatesofolympus.auction/ gates of olympus oyna

タイトル
名前
Url
コメント