دسترسی سریع و آسان: حرکت یک مستطیل با استفاده از C # در فروشگاه App ویندوز

My overall blog philosophy is that it’s perfectly fine to blog about old, settled subjects that have been covered to death elsewhere.  I assume this topic is one of those, but I’m blogging it anyway.

I’ve been working on a window store app and I’m at the part where I need to do some animating.  برای این منظور, I’ve been figuring out bits and pieces of windows store app animation which, as it turns out, is quite close to, but not exactly like, XAML based animations in .NET (I’m still coming to grips with the fact that WinRT <> .🙂 NET ).

This morning I wanted to get a handle on drag and drop operations.  En route to that, I got bogged down moving a rectangle instead :).  Here’s the code that moves a rectangle when the user clicks a button:

   1:   
   2:              MatrixTransform ct = (MatrixTransform)rectBig.RenderTransform;
   3:              Matrix m = ct.Matrix;
   4:              m.OffsetX  = 10;
   5:              m.OffsetY  = 10;
   6:              ct.Matrix = m;
   7:              rectBig.RenderTransform = ct;

The trick here is that I can’t directly change OffsetX or OffsetY.  There may be a more clever way of doing this (and if you know and feel like, please post in the comments). 

In order to do this, I need to:

1. Get the MatrixTransform of the rectangle (by casting RenderTransform).

2. Get the Matrix of that guy.

3. Change the Matrix’s offsets.

4. Reassign the Matrix back to the MatrixTransform.

5. Reassign the MatrixTransform back to the Rectangle.

To test it, I put a rectangle and button the screen. When I click the button, the above logic executes and moves the rectangle immediately.

At some point, I’d like to animate this but I have no idea how to get a DoubleAnimation to work on it (Storyboard.SetTargetProperty() is a mystery to me on this for the time being).

</پایان>

undefinedمشترک شدن در وبلاگ من.

من در توییتر در http://www.twitter.com/pagalvin

تنظیم ارتفاع ListboxItems ها در یک بدهیم برنامه نویسی برای ویندوز فروشگاه App

I’m working on a windows store application and one of the things I want to do in the app is display a log that shows status messages and other informational tidbits as the user works things. برای این منظور, من اضافه بدهیم به شرح زیر است:

<بدهیم *:نام ="GameStateLog" HorizontalAlignment ="مرکز" ارتفاع ="221" VerticalAlignment ="بالا" عرض ="499" بالشتک ="0" FontSize ="10">

 

کد C # به پر به ListBox در زمان اجرا در امتداد خطوط:

GameStateLog.Items.Insert(0, GameStateCounter     + ": حالت بازی جدید: انتظار برای پخش 1 نام");

This worked out fine enough but the UI showed a crazy amount of padding around the individual messages as they were added. این را حس می کند اگر من می خواهم کاربران نهایی را قادر به انتخاب این آیتم، اما معنی ندارد وقتی که من فقط می خواهم برای نشان دادن یک سری در حال اجرا از پیام های ورود به سیستم - از کاربران خواهد این را انتخاب کنید, just view them. به طرز عجیبی سخت بود برای پیدا کردن یک راه آسان برای انجام این کار و مسلما, the way I found it isn’t necessarily “easy” but I got it working OK. بینش کلیدی از این ارسال اینجا (http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/c4a6f694-bd46-4779-ab83-b1c2fcb2397c) from Bob Relyea. به جای اضافه کردن رشته ها به جمع آوری اقلام در به ListBox, add ListBoxItems. با اضافه کردن یک رشته, the ListBox was creating its own ListBoxItem on its own. I wasn’t able to affect anything about that ListBoxItem after the fact. کد جدید:

        خصوصی از درجه اعتبار ساقط AddGameStateLogMessage(رشته theMessage)
        {
            ListBoxItem که = جدید ListBoxItem();
            li.Content = theMessage;
            li.MaxHeight = 25;

            ضخامت thisPadding از = جدید ضخامت(5, 0, 5, 0);
            li.Padding = thisPadding;

            GameStateLog.Items.Insert(0,لی);
        }

 

Here I’m creating ListBoxItem’s and inserting them. من بالشتک اضافی با تنظیم ضخامت آن حذف.

این است که بسیار انعطاف پذیر است که من قصد به انجام برخی از برنامه نویسی به برجسته انواع خاصی از پیام ها و رنگ با مستقیما اضافه کردن ListBoxItems های من به سبک آنها را به هر راه که من می خواهم.

امیدواریم که این کمک می کند تا کسی!

</پایان>

undefinedمشترک شدن در وبلاگ من.

من در توییتر در http://www.twitter.com/pagalvin

دسترسی سریع و آسان – ایمن نام صف لاجورد

Silly but simple post.

As a follow-up to yesterday’s posting on “StorageException was unhandled” I thought I’d show the wee snippet of code I use to generate queue names:

 

        عمومی ایستا رشته GetRandomQueueName()
        {
            Guid g;
            g = System.Guid.NewGuid();
            برگشت g.ToString();

        } 

Kind of silly in its simplicity but works well for me and has generated 100’s of safe queue names in the last couple of weeks.

</پایان>

undefinedمشترک شدن در وبلاگ من.

من در توییتر در http://www.twitter.com/pagalvin

کار با صف لاجورد – "StorageException نشد”

I’ve been playing around with Azure queues for the last week or two and it’s been going smashingly.  Where were these things when I needed them back in 1990?

This article, in particular, is an excellent intro to queues for .NET programmers: http://www.windowsazure.com/en-us/develop/net/how-to-guides/queue-service/.  Using that article, I’ve been able to pull together a really nice bit of client-server logic that is so far reliable and just works with no grief.  Really – where was this stuff in 1990?

I did hit a small stumbling block right out of the gate, گذاشت.   As soon as I strayed from the specifics of the walk-through, I got hit with a StorageException and a “The remote server server returned an error (400) Bad Request.

image

It turned out that my queue name was off:

image

When I changed “OneQueueToRuleThemAll” to “onequeuetorulethemall” the StorageException went away.  I haven’t noticed any of the documentation calling this out but it may well do that.

Hope that helps someone.

</پایان>

undefinedمشترک شدن در وبلاگ من.

من در توییتر در http://www.twitter.com/pagalvin

برداشت در اوایل طرفدار سطحی

[بروز 3/26: I got a tweet from the @Surface people asking if they could help me with anything, so I made a plug for Swype, which they acknowledged with an “Interesting – Thanks for the feedback, پل!"  I really think that Swype would make this device much easier to use for casual productivity.  (همچنین, fixed a typo pointed out to me by an old friend – thanks, مخفف کلمه میکروفون!)]

My office won a contest earlier this year with a small cash award attached to it.  I used the money to subsidize the purchase of a Surface Pro (128GB with the 2-year insurance plan) and I’ve been using a good deal since then.  I bought it from the Microsoft Store at the mall by Columbus Circle in Manhattan.  Total price was about $1300 USD با صفحه کلید بهتر و بیمه پمپاژ را 🙂

I only got it 4 days ago and already I can hardly imagine not having it.  I brought to bed to read the so-far excellent Programming Windows 8 Apps with HTML, CSS, and JavaScript and it was the first thing I reached for when I woke up.

Here are some impressions, in no particular order:

How touching: I want to touch every screen I see now.

Windows 8 is for touch devices: I have a much stronger appreciation for Windows 8.  This O/S translates much better to a touch device than it does a keyboard.  At first, I didn’t know how to barely get started but it quickly became second nature for me. And it’s very fast and responsive, so you don’t feel like you’re lagging around or paying a penalty for a mistake.  I’m not an expert with the UI (mystery things still happen) but I’m flying all around the place with a good deal of confidence after a relatively small handful of hours on it

در همان زمان, now that I’ve been using touch, I have a much better understanding of the O/S from a Dell laptop perspective.  The mouse pad on my E6430 doesn’t compete with the Surface’s multiple points of contact, غیره, but it does do a good job with some of the gestures.  But regardless of the mouse pad, having worked with the surface now, I know what’s happening when I move my mouse cursor around and various little cues pop up in the corners and such.

I also want to point out a line from this blog post توسط Brandon Carson:

Along comes Microsoft with a different perspective of how an operating system should support its users. Instead of two OS’s and a fragmentation between devices, Microsoft builds a new OS to blend the lean-back experience with the desktop experience and give the user control over how to interact with their device."

That line crystallized for me the whole point of Win8 as an O/S.  It’s an iPad and it’s laptop.  I like that.  I like that a lot.  I don’t bring my laptop to bed very often and when I do, it’s a novelty and a pain.  This thing can go everywhere with me, including work.

The windows store is awesome!  I just assumed, when I bought the Surface, that the windows app store would be a complete waste of time, a barren waste land of half-hearted apps clinging to the rocky soil, sad and pathetic.  I think that the various anti-Microsoft peoples are winning the hearts and minds argument here.  Although it’s empirically true that Apple and Google have bazillions more apps in their stores, dwarfing MSFT, MSFT still has a goodly selection and it’s growing.   My point isn’t that MSFT’s store is “better” than those, but that it’s not as bad as the intertubes will make you think.  Give it a look. There are many interesting apps out there.

Pen is awesome!: I have wanted the ability to write and sketch architecture diagrams FOREVER.  All the 3rd party things always felt kludgy unless you bought one that was expensive and I just didn’t feel like it.  With the surface, it’s totally natural and quick, plus lots of interesting apps available.  These include paint.net, something interesting from Evernote (Skitch), Onenote (which has first class support for the pen), پاورپوینت (allows annotating and drawing during presentations).  I have barely scratched the surface here and I am loving it.  Check out this blog post for a more professional opinion on how Surface can be used for more industrial strength art.  I can’t wait for my next PPT demo.

It plays Civ5! (with a little help from some friends):  Civ به با لمس واقعا شسته و رفته است 🙂

Some annoyances:

  • Battery is not great.  No better than my laptop.  I have this vague notion that batteries need to be “conditioned” (but that’s probably nonsense) so if that’s the case, it may get better.
  • Keyboard is tiny.  اما, I have been getting used to it.
  • نه Swype! I just started using Swype a few months ago on my Galaxy S3 running Android and I can’t believe how productive it made me.  Not having that on Win8 is really frustrating and it seems like it will be a long time, if ever, before Swype is available.  Some other 3rd parties are working on it but my 30 seconds worth of research implies that the O/S jsut doesn’t support it.  (If you aren’t using Swype or one of its cousins you should stop reading this blog post and give it a try; this post will almost certainly still be here once you get back).
  • Overall form factor – still getting used to it.  It’s a beautiful screen and Netflix is great on it.  Web browsing is great on it. اما, MS Word – kind of hard and not very touch friendly (به من, تا کنون).  I’ve seen screen shots of people using visual studio on it – that seems like a stretch.  But I’m going to give it a try at some point.

پس, there you go!  Hope this helps someone thinking about about it.  It’s too early for me to say “buy it!”.  I’ll revisit this post in a week or so and follow up.

</پایان>

مشترک شدن در وبلاگ من.

من در توییتر در http://www.twitter.com/pagalvin

بطور غیر منتظره عالی تیم ورزش ساختمان

من برای تیم جدید شیرپوینت نیویورک و در آخرین لحظه تشکیل جلسه تیم در اینجا, بدون هیچ دلیل خاص, ارسال یک موضوع جدید:

تبادل اطلاعات شخصی: من قصد دارم به جلو و تا زمین گوگل و هر یک از ما به تیم بگویید که در آن ما متولد شد و که در آن زندگی می کنیم. من آن را نقشه زمان واقعی. ما همچنین می خواهید یک Rundown سریع از خانواده های مربوطه ما. احساس رایگان برای ایجاد یک خانواده فانتزی در اینجا اما در ذهن داشته باشیم که هنگامی که شما شروع به دروغ گفتن در مورد خانواده, شما باید برای ایجاد دروغ های متوالی استادانه درست شده و شما به احتمال زیاد سفر در برخی از نقطه, بنابراین برای آن آماده می شود.

من فکر کردم این امر می کنند 20 دقیقه یا بیشتر به کار با نه نفر.  در عوض, آن را در زمان 90 دقیقه لبخند, عمدتا به دلیل مردم مقدار قابل توجهی از زمان را در مکان های مختلف در سراسر جهان به سر برد.  این یک تمرین شگفت انگیز بود و ما قطعا آموخته زیادی در مورد هر یک از دیگر.  من یاد گرفتم, سرانجام, آنچه که مردم از "شمال" و "جنوب" هند به معنای.

اگر شما می توانید در این روز شلوغ و گیج کننده به انجام چیزی شبیه به آن, من صمیمانه از آن را توصیه.

</پایان>

مشترک شدن در وبلاگ من.

من در توییتر در http://www.twitter.com/pagalvin

پیگیری تمرین – بخش 1

About a year ago, I joined مشاور اسلالوم here in new York as what we call a Practice Area Lead.  (As a minor aside to the point of this blog post, that change in jobs accounts for my total drop-off in blogging.  It was a big change in roles and a big change in day to day “stuff” but I’ve sort of acclimated myself to it and look forward to writing again لبخند ).

In this PAL role, I’m responsible to save the company and the immediate environs of 21 West 21st street from disaster on a regular basis.  It’s a lot of pressure (more than you might think – just think of all the children!). 

In service to that imperative, I need to help out with pre-sales, create and update go-to-market offerings, hire good folks, train up folks to make them better (but really, to make my job easier) and occasionally do something billable at a client.  I get a lot of “input” – questions from clients, sales opportunities, my own addled thoughts and so forth.  Some of it’s really good (like a hot sales oppty) while a lot of it is less good.  The key is to initially track, prioritize and manage each of these ideas (great and small) to a successful conclusion. 

This kind of task management isn’t new, راست?  And we have lots of task tools to help us with this.  Outlook has tasks.  You can slap a spreadsheet together nice and quick.  My very first task management tool was a legal notepad back in my days at GAF as a developer in the IT department.  (Ask me about those good old days the next time you see me if you’re interested, or maybe not...).

Being a SharePoint guy (nominally, حداقل), I’ve always thought to use SharePoint.  But for some reason, a generic Task list never quite did it for me.  A bunch of months ago, I decided to heal myself and just create a SharePoint based solution.  It was so embarrassingly easy to create that I thought to write about it here.

پس, my goals here were very simple:

  • Super easy and fast data entry
  • Prioritize activities
  • Categorize activities
  • “next step” driven – these activities will often span weeks (maybe even months).  They almost never “end” after one specific update.

These bits lend themselves very nicely to a content type, so that’s what I created:

image

You can actually see that I had a sales bias with this at first, since I have that “Client” field.  A lot of my practice’s activities are based around clients (either actual or prospective).  But many of them are also internally focused.  I slap “Slalom” in there when I create them, but it always feels a tad weird.  I should have named it something more generic.  Maybe “Target Organization” or something.

Here are a few miscellaneous notes on the content type:

  • Activity Impact has devolved into a measurement of priority.  I’m not sure why I went with “Impact” and not “Priority” day zero, but that’s what I did. 
  • Next Steps and Next Steps Date – I have a dashboard that is driven by the next activity date.  This dashboard has sort of become my marching orders for the day/week.  I just go to the dashboard and focus on high priority stuff first and go from there.  (There’s the notion of an “untagged”
  • Primary Owner – the only thing of note is – isn’t it awesome that you can sort and filter on multi-select columns in SP 2010! I actually didn’t fully buy into this notion at first.
  • Activity Status – really just “Open” or “Closed.” 
  • Primary Practice – After I began using this, another PAL in my group wanted to try this out, so I slipped this into the mix to distinguish between my stuff (Portals & همکاری) and her stuff (Azure).

Here’s my dashboard:

image

(sorry for all the blurred out bits – I didn’t feel like creating a bunch of test data and I don’t want to give anyone a heart attack over sharing vital details [see the bit in the intro re: save the world, غیره, غیره, غیره]).

I have several other views on this list, including a datasheet view that allows me to do mass updates.  I do this most often when a bunch of lower priority items I planned to do a never quite got done and need to be pushed out a week.

Every day, I pull up my activities log and just start working off the top of the list.

In part 2, I’ll explain how I made this even more useful with the addition of a nice email-enabled doc library and SPD workflow.

</پایان>

مشترک شدن در وبلاگ من.

من در توییتر در http://www.twitter.com/pagalvin

مشاور اسلالوم–بوستون رهبری شیرپوینت مورد نیاز

من مشاوره اسلالوم پیوست شش ماه پیش به روز و آن بوده است سوار باور نکردنی.  من قصد دارم به وبلاگ بیشتر در مورد آن در حال حاضر که من شروع به احساس نسبتا جامد.  کار در اینجا است مانند یک افسانه زندگی می کنند بیشتر از زمان است.  مردم هوشمند, مشتریان جالب, پشتیبانی های جامد از مدیریت هر دو محلی و شرکت های بزرگ ... تقدیم شراب به حضور خدایان گاه به گاه ... چیزهای خوب.

دفتر بوستون ما به تازگی باز شده است و آنها به دنبال یک رهبر برای راه اندازی شیرپوینت عمل خود.  این بسیار پیچیده است, کار کامل با بسیاری از چالش های سرگرم کننده.  تعریف ارائه شده از علاقه شما به بازار محلی, شما رول تا آستین خود را و انجام کار واقعی و شما را استخدام مردمی برای ساخت تا بهترین تیم شما می توانید مدیریت.  من می توانم آن را توصیه نمی قویا به اندازه کافی.

اگر شما علاقه مند در این موقعیت هستید و یا اگر شما می دانید هر کسی که ممکن است علاقه مند, لطفا آتش را خاموش یک ایمیل به من: paul.galvin @ slalom.com.

خوشحالم برای به اشتراک گذاشتن تجربه های بی پرده من هستم (هر دو خوب و بد) در اینجا در نیویورک.

</پایان>

مشترک شدن در وبلاگ من.

من در توییتر در http://www.twitter.com/pagalvin

کتاب گردش کار من برای خرید در دسترس است

من برای اولین بار صحبت کردن با شرکت های اصلی من نویسندگان بیش از دو سال پیش آغاز شده است.  آنها در نهایت این پروژه رها شده, اما در اواخر تابستان, با کمک جدید چند نویسندگان, من در نهایت قادر به آوردن در سراسر خط پایان است. 

گردش کار حرفه ای در شیرپوینت 2010: راه حل های واقعی کسب و کار آمار آمازون و بارنز و شریف وب سایت برخی از زمان در آخرین 10 روز است.  این در شومیز و روشن شدن / قطعه زمین پیش امده و همه از آن, فقط در زمان حال حاضر بزرگ کریسمس. لبخند

این کتاب در مورد دو چیز است: 1) قدرت بخشیدن به کاربران نهایی به طوری که آنها می توانند به حل مشکلات کسب و کار خود را با استفاده از SP 2010 گردش کار قابلیت ها و 2) کمک فناوری اطلاعات کارکنان (توسعه دهندگان به طور خاص) انجام همان.  حدود دو سوم از این کتاب ها در هدف قرار داده آنچه که من اسمش "کاربران فعال" (کاربران نهایی بسیار ماهر است، اما غیر فنی و انگیزه).  تلاش می کند به توضیح دهید که چگونه به سادگی راه حل ها در SharePoint 2010 با استفاده از شیرپوینت طراح گردش کار و تعدادی از ویژگی های شیرپوینت اضافی.

سوم مستقیما با هدف در توسعه است.  اما, بر خلاف برخی از کتاب های صرفا فنی در بازار, این فصل توضیح دهید که چگونه توسعه دهندگان شیرپوینت می تواند قابلیت های که بیشتر سبب آن کاربران فعال با استفاده از فعالیت های شیرپوینت طراح سفارشی و دیگر بیت های فنی ایجاد کنید.  با قدرت دادن به کاربران فعال در سازمان شما, تیم توسعه خود را آزاد کردن (و یا فقط خودتان) برای انجام این کار سخت واقعا (و به طور معمول بیشتر از لحاظ فنی جالب) مطالبی که کاربران نهایی می توانند انجام دهند و هرگز خود را امتحان کنید.

در طی هفته های آینده, من خواهم نوشت تا بیشتر در مورد این کتاب, جمله چیزهای کرکی مانند "چگونه است که آن را می خواهم برای نوشتن یک کتاب" که من می دانم بسیاری از مردم علاقه مند به دانستن در مورد.  اول - من نویسندگان بدون حضور آنان در این کتاب جان سالم به در برده هرگز برای دیدن نور از روز معرفی.

اطلاعات بیشتر در مورد این کتاب آمازون سایت وب.

</پایان>

مشترک شدن در وبلاگ من.

من در توییتر در http://www.twitter.com/pagalvin

شیرپوینت قسمت UI وب سایت الگوی طراحی با استفاده از XSL

من شده است و بحث در این سال بر روی یک الگوی طراحی برای بخش های وب شیرپوینت که در آن رابط کاربری به طور کامل از طریق XSL. 

من قصد دارم به نوشتن این در جزئیات بیشتر در طی دوره بعد از زمان.  در این زمان, در اینجا این است پاورپوینت.

کد منبع برای این پروژه در CodePlex در اینجا: http://webpartsxsl.codeplex.com/.

</پایان>

مشترک شدن در وبلاگ من.

من در توییتر در http://www.twitter.com/pagalvin