public DeckSlideContentMessage(DeckModel deck, ByteArray hash) : base(hash) { using (Synchronizer.Lock(deck.SyncRoot)) { Image image = deck.GetSlideContent(hash); if (image == null) { throw new ArgumentException("The specified ByteArray does not map to slide content in the specified deck.", "hash"); } this.Target = this.Content = new ImageHashtable.ImageHashTableItem(hash, image); this.AddLocalRef(this.Target); } }